嵌入式技术基础与实践

所需积分/C币:16 2013-05-12 12:21:42 6.57MB PDF

关于嵌入式的技术基础,pdf,嵌入式接口电路及嵌入式原理。
第1章概述 MCU的外围接口电路,承担着输入、输岀、执行动作等功能,而计算、比较、判断等 原来必须用电路实现的功能,现在用软件取代,大大地提髙了系统的性能与稳定性,这 种控制技术称之为微控制技术。在微控制技术中,核心是MCU,其它部分以此而展开 3.MCU与嵌入式系统的关系 嵌入式系统是面向测控对象,嵌入到实际应用系统中的计算机系统的统称。嵌入式 系统通常有4种:①工控机;②通用CPU模块;③嵌入式微处理器( Embedded processor); ④嵌入式微控制器( Embedded microcontroller)。前两者是基于通用计算机系统,即将 通用计算机系统用于测控对象。后两者是基于芯片形态的计算机系统,其中嵌入式MCU 是在通用CPU基础上发展,增加满足测控对象要求的外围接口电路,用于测控领域 而嵌入式MCU则是在嵌入式系统的概念广泛使用后,给传统MCU定位的称呼。所以, 可以说MCU是最典型的、最广泛的嵌入式系统。 MCU从体系结构到指令系统都是按照嵌入式系统的应用特点专门设计的,它能很 好地满足应用系统的嵌入、面向测控对象、现场可靠运行等方面的要求。因此由MCU 构成的系统是发展最快、品种最多、数量最大、应用最广的嵌入式应用系统。 由于MCU有嵌入式应用的专用体系结构与指令系统,而且具有体积小、可靠性高 等特点,又具有各种各样的型号,可以满足不同的需求,实际应用时,开发者可根据具 体要求选用最佳型号的MCU嵌入到应用系统中。 1.1.2MCU的发展简史 嵌入式计算机目前主要有SoC和MCU两种形态。SoC( System on a Chip)即片上 系统,将电子系统的几乎全部功能集成在一块芯片上,从而使整机成本、体积都大大降 低,顺应了现代通讯、电脑、消费产品向高性能、低成本方向的发展趋势。SoC追求产 品系统的最大包容性,是集成电路向超大规模集成电路发展而产生的,主要用于大批量 特定产品的设计。MCU是嵌入式计算机的主要形态,应用最广,特别对于大部分嵌入 式系统初学者,应该从一种MCU入门。这里简要回顾MCU的发展历史。 1971年11月 Intel公司首次宣布4004的4位微处理器,1974年12月 Fairchild(仙 童)公司即推出了8位MCUF8,开创了MCU的初级阶段。1976年 Intel公司推出了 MCS-48MCU,它极大地促进了MCU的变革。1977年GI公司推出了PIC1650,但此 时还处于低性能MCU阶段。1978年, Zilog公司推出Z8MCU。该公司的与Z8MCU 指令类似的Z80CPU曾在MCU市场流行多年。1980年, Intel公司在MCS-48的基础 上,推出了MCS-51,它使MCU的应用跃上了一个新台阶。从此之后,其它公司的8 位MCU也迅速发展起来。但迄今为止,由于我国MCU制造能力弱等特殊原因,MCS -51系列MCU以及指令系统与其兼容MCU,仍然是我国许多高校8位MCU或嵌入式 系统基础课程的教学蓝本。1983年, Intel公司开始推出MCS-96系列16位MCU。1988 年 Intel公司推出了MCS-96系列中的8098/8398/8798MCU,使MCS-96系列得到了 定程度的应用,但远没有8位MCU应用那样广泛。这是因为在MCU的一些应用领域 中,8位MCU已能满足要求。但是,随着技术的发展与需求的提高,估计8位MCU、 第1章概述 16位MCU、32位MCU将各有自己的应用市场 Motorola公司于1974年开始推出MC6800微处理器,在此基础上,1979年开始生 产 MCU MO6801,在1983年前后发展成为较高性能的M68HC05系列,根据 Dataquest 的资料显示, Motorola公司的MCU在国际市场上占有最大份额。1990年前后,该公司 开发了针对简单被控对象的廉价MCU,而廉价MCU在家用电器控制方面具有明显优 势。2002年摩托罗拉公司(2004年6月更名为 Freescale半导体公司)继68HC12系列 MCU之后,推出了HCS12系列MCU,受到了许多中端用户的青睐。2006年推出了 RS08系列超低端8位MCU,以满足用户对体积更小、更经济高效解决方案的需求。同 时, Freescale半导体公司的8位MCU、16位MCU、32位MCU并行发展,增加了市 场份额,也方便了用户的选型。 二十世纪九十年代是MCU制造业大发展时期,这个时期的 Motorola、 Intel ATMEL、德州仪器、三菱、日立、飞利浦、韩国LG等一批企业开发一批性能优越的 MCU,使MCU市场丰富多彩,极大地推动了MCU的应用 从MCU出现以来,MCU制造技术迅猛发展,各种用途、各种类型的MCU不断 出现,据统计,至今已达500多个机种,目前MCU正向①大容量、高性能化;②小容 量、低价格化;③外围电路内装化等几个方向快速发展,应用领域也不断地扩大。同时, 8位MCU、16位MCU、32位MCU、64位MCU也将拥有各自的应用领域。 1.1.3MCU在我国的应用与教学简况 二十世纪八十年代前后,单片机在我国开始应用,各理工科院校陆续开设了有关课 程。在教学及应用上, Zilog公司生产的z80CPU成为我国工业控制的主流,以Z80为 CPU组成的TP801单板机在教学上及应用领域发挥过巨大作用。但确切地说,Z80并 不是一个单片机,而仅是一个微处理器。 Zilog公司1978年推出Z8单片机,其指令功 能与Z80类似。但是,当单片机得以迅速发展之时,Z80在工业控制领域的地位被取代 二十世纪八十年代末至九十年代初,我国的工业控制领域开始转向使用 Intel公司 生产的MCS-51,通过这个时期,由于单片机属于高科技产品,西方国家设在巴黎的统 筹委员会限制向中国出口单片机,而 Intel公司通过香港转口使其产品几乎独占了中国 的单片机市场,MCS-51系列单片机在我国成为单片机应用领域的主流品种。这个时期, 国内几乎只有 Intel一家公司销售、开发与应用单片机,国内单片机的学术论文主要是 关于 Intel8051的论述,这样使得8051系列单片机在中国有其牢固的基础。但是,这 种情况实际上对单片机的应用与开发是不利的。1990年9月巴黎统筹委员会解除对中 国的贸易禁令后,各公司的单片机纷纷进入中国,我国单片机应用的开发呈多样性。特 别是在一些领域,实用、低价的单片机也得以较广泛的应用。 从1999年开始, Motorola公司及后来独立出来的 Freescale公司在我国推广其新 代单片机HC08系列及增强型HCS08系列,已经对我国的单片机应用产生积极的影响。 HC08/S08系列单片机将在我国得到广泛的应用。因此选择HC08系列单片机及HCS08 第1章概述 系列单片机进行嵌入式技术基础的教学具有实际意义,因此本书以HC08系列单片机及 HCS08系列单片机为蓝本学习嵌入式技术基础。 另外,需要指出的是,由于我国的MCU设计、制造技术与发达国家差距明显,我 国高校大多选用国外MCU为嵌入式技术的入门蓝本。选型上,应避免历史上的单 Z80到MCS-51这种情况。实践上,应该提倡动手,提倡软件与硬件的结合,注重嵌入 式应用技术综合方法的培养。本书选择 Freescale的新型8位MCU用于本科教学或嵌 入式应用技术入门,充分考虑到木科教学特点与本科学生的知识结构。主要原因是:①8 位MCU本身具有较大应用范围,学生毕业后,可能遇到许多“小”系统需要开发;② 目前8位MCU都更好地支持C语言(或C++),便于今后扩展;③8位实验系统容易 理解与搭建,有利于学生实践,培养嵌入式应用的综合能力;④如果学生毕业后或研究 生阶段仍需进一步学习嵌入式应用技术,容易向32位自然过渡;⑤符合学习渐进规律, 有利于打好基础。选择 Freescale的8位MCU作为教学蓝本,还考虑到 Freescale的8 位MCU、16位MCU、32位MCU构成一个品种齐全、自成体系的庞大的MCU系列 有利于进一步学习与开发。不提倡使用体系结构较为复杂的32位MCU作为本科嵌入 式系统基础阶段的教学使用,避免初学阶段进入学习误区,忽视打好嵌入式应用的基础 1.2嵌入式系统常用术语 在学习嵌入式应用技术的过程中,经常会遇到一些名词术语。从学习规律角度,初 步了解这些术语有利于随后的学习。因此,本小节对嵌入式系统中所用的一些常用术语 给出简要说明,以便有个初始印象,后续章节将有详细解释 121与硬件相关的术语 封装:封住集成电路所用的塑料、金属或陶瓷包装。封装可以保护芯片,并使芯片 与外部世界连接。常用的封装形式可分为通孔封装和贴片封装两大类。通孔封装主要有: 单列直插(SIP, Single-in- line Package)、双列直插(DIP, Dual-in- line Package)、Z字型直 插式封装(ZIP, Zigzag-in- line Package)等。而常见的贴片封装主要有:小外形封装(SOP, Small outline Package)、紧缩小外形封装(SSOP, Shrink small Outline Package)、四方扁 平封装(QFP,Quad- Flat Package)、薄方封装(LQFP, plastic-Low- profile Quad-Flat Package)、塑料扁平组件式封装(PFP, Plastic flat package)、带载封装(TCP, Tape Carrier Package)、插针网格阵列封装(PGA, Ceramic Pin Grid Array Package)、球栅阵列封装 (BGA, Ball grid array Package)等。本书附录E给出了 Freescale公司MCU的常用封装 形式及实际大小 印刷电路板(PCB, Printed circuit board):印刷电路板是组装电子元件用的基板, 是在通用基材上按预定设计形成点间连接及印制元件的印制板。它的主要功能是提供集 成电路等各种电子元器件固定、装配的机械支撑;实现集成电路等各种电子元器件之间 的布线和电气连接(信号传输)或电绝缘;为自动装配提供阻焊图形,为元器件插装 第1章概述 检查、维修提供识别字符和图形 动态可读写随机存储器(DRAM, Dynamic Random Access Memory):由一个 MOS管组成一个二进制位。MOS管的放电导致表示“1”的电压会慢慢降低。一般每 隔一段时间就要控制刷新信息,给其充电。DRAM价格低,但控制烦琐,接口复杂。 静态可读写随机存储器(SRAM, Static Random Access Memory):由四个或者六 个MOS管构成一个二进制位。当电源有电时,SRAM不用刷新,永远保持原有的数据。 只读存储器(ROM, Read only memory):数据可以读出,但不可以修改,所以称 之为只读存储器。通常存储一些固定不变的信息,如:常数、数据、换码表、程序等。 它具有断电后数据不丢失的特点。ROM有固定ROM、可编程ROM(即PROM和可擦 除ROM(即 EPROM)三种。 PROM的编程原理是通过大电流将相应位的熔丝熔断,从而将该位改写成0,熔丝 熔断后不能再次改变,所以只改写一次。 EPROM( Erase prom是可以擦除和改写的ROM,它用MOS管代替了熔丝,所以 可以反复擦除、多次改写。擦除是用紫外线擦除器来完成的,很不方便。有一种用低电 压信号即可擦除的 EPROM称为电可擦除 EPROM,或简称为E2PROM 闪速存储器( Flash Memory):是一种快速的E2PROM。由于工艺和结构上的改进, Flash memory比普通的E2PROM的擦除速度更快,集成度更高。如: Motorola在HCS08 微处理芯片中采用第三代0.25微米的闪存技术,可以达到10万次重复读写能力,页整 体擦除和写入只需要几十个毫秒。 闪存相对于E2PROM来说,其最大的优点是系统内编程,也就是说不需要另外的 器件来修改内容。闪存的结构随着发展而有些变动,同时尽管现代的快速闪存是系统内 可编程的,但仍然没有RAM使用起来方便。典型的一次擦除过程只能处理存储器的 个页面,一次擦除过程只能将页面中所有的位设为1(所有字节=0xFF)。写一个字节只 能改变某些位使其为0。擦、写操作必须通过特定的程序算法来实现。这种算法是独特 的,以保证不会干扰CPU和存储器之间的正常交互,具体内容请参见第13章 Flash存 储器的在线编程。 模拟信号:时间连续、数值也连续的物理量,如温度、压力、流量、速度、声音等 在工程技术上,为了便于分析,常用传感器、变换器将模拟量转换为电流、电压或电阻 等电学量。 数字信号:是一种二值信号,用两个电平(高电平和低电平)分别来表示两个逻辑 值(逻辑1和逻辑0)。 个理想的周期性数字信号,可用以下几个参数来描绘(如图1-2所示) 第1章概述 Vm——信号幅度; T—信号重复周期; 脉冲宽度 VI 占空比。其定义 为 t/ms g0)=x100% T 图1-2理想的周期性数字信号 122与通信相关 的术语 并行通信:将数据的各位同时在多根并行传输线上进行传输。数据的各位同时由源 到达目的地。适合近距离、高速通信。常用有4位、8位、16位、32位等同时传输 串行通信:数据在单线上按时间先后一位一位地传送,其优点是节省传输线,但是 数据传送速度较慢。在嵌入式系统中,串行通信一词一般特指用串行通信接口SCI( Serial Communication interface)与RS232芯片连接的通信方式。PC、USB等也是串行通信, 但它们有专用名词。 串行外设接口(SPI, Serial Peripheral Interface):也是串行通信方式,主要用于 MCU扩展外围芯片使用。这些芯片可以是具有SPI接口的AD转换、时钟芯片等。 I2c( Inter Integrated Circuit):PC总线是一种由 PHILIPS公司开发的两线式串行 总线,用于连接MCU及其外围设备 通用串行总线USB, Universal serial bus):USB是MCU与外界进行数据通信 的一种方式,其速度快,抗干扰能力强,在嵌入式系统中得到了广泛的应用 控制器局域网(CAN, Control Area network):它是一种全数字、全开放的现场总 线控制网络。 背景调试模式(BDM, Background Debug Mode):背景调试模式是 Freescale半导 体公司提出的一种调试接口,开创了片上集成调试资源的趋势。 边界扫描测试协议(JTAG, Joint Test Action Group):该协议由国际联合测试行 动组开发,提供一种串行扫描路径。JTAG能获取芯片寄存器等内容,或者测试遵守IEE 规范的器件之间引脚连接情况。 123与功能模块相关的术语 通用输入/输出(GPIO, General Purpose I/O):所谓通用ⅣO,即基本的输入输出, 有时也称并行IO。作为通用输入引脚时,MCU内部程序可以读取该引脚,知道该弓 脚是“1”(高电平)或“0”(低电平),即开关量输入。作为通用输出引脚时,MCU内 部程序向该引脚输出“1”(高电平)或“0”(低电平),即开关量输出。 A/D与D/A:A/D转换模块的功能是将电压信号转换为对应的数字信号。实际应 用中,这个电压信号可能由温度、湿度、压力等实际物理量经过传感器和相应的变换电 7 第1章概述 路转化而来。经过AD转换,MCU就可以处理这些物理量。而与之相反,D/A转换则 是将数字信号转换为电压信号 脉冲宽度调制器(PWM, Pulse width modulator):PWM是一个D/A转换器,可 以产生一个高电平和低电平之间重复交替的输出信号,这个信号就是PWM信号。 看门狗( Watch Dog):为了防止程序跑飞而设计的一种自动定时器。当程序跑飞时, 由于无法正常执行看门狗定时器,定时器会溢出使系统程序复位。 液晶显示LCD, Liquid Crystal Dispaly):LCD是电子信息产品的主要显示器件, 可分为字段型、点阵字符型、点阵图形型三类 发光二极管(LED, Light Emitting Diode):LED是一种将电流顺向通到半导体PN 结处而发光的器件。常用于家电指示灯、汽车灯和交通警示灯。 键盘:键盘是嵌入式系统中最常见的输入设备。识别键盘是否有效被按下的方法有 查询法、定时扫描法与中断法等。 124与嵌入式软件相关的术语 中断:指中央处理器CPU正在处理某件事情的时候,外部发生了某一事件,请求 CPU迅速去处理,CPU暂时中断当前的工作,转入处理所发生的事件,处理完后,再 回到原来中断的地方,继续原来的工作,这样的过程称为中断。实现这种功能的部件称 为中断系统,产生中断的请求源称为中断源。我们把由软件指令引起的一个程序的中断 则称为软件中断;而由某一特定功能引脚或基于芯片设备产生的中断则称为硬件中断。 在嵌入式系统中,中断是一个很重要的概念,为了实时响应外界发生的事件,必须依靠 中断系统来实现。 中断服务程序:响应特定中断而运行的一段程序。这段程序所在的地址称为中断 向量。 实时操作系统RToS( Real Time Operating System):指的是一种操作环境,运行 于嵌入式系统上,并在可预测的时间间隔内,程序能对特定的事件做出反应。事实上, 我们所说的RTOS是指一种运行于嵌入式系统上的操作环境,可以提供建立多任务的能 力。RTOS为每个任务建立一个可执行的环境,可以很方便地在任务之间传递消息,在 个中断处理程序和任务之间传递事件,区分任务执行的优先级,并协调多个任务对同 个IO设备的调用。通常一个很大很复杂的嵌入式系统可以分解为一系列较小、较简 单的并行任务来实现,各个任务之间互不干扰,使用RTOS排除并行任务中的人为因素, 降低复杂度,增强模块化,使工程由更简易和标准化的模块组成,处理起来更轻松、快 捷 μCOS-:是一个可移植和可裁剪的抢占式多任务实时操作系统,并且开放源代 码,在嵌入式系统中得到广泛的应用。 临界区( Critical section):RTOS中使用的一个术语,它是指一段必须按次序执行 的代码,并且不能被中断,否则程序有可能无法正常运行。 第1章概述 1.3嵌入式系统开发方法导引 从嵌入式应用系统设计角度来看,任何一个嵌入式产品或嵌入式应用系统都是一个 输入输岀处理系统。广义地说,所处理的物理量可分为模拟量、开关量与数字量。若 能了解一个实际的对象系统有哪些输入的物理量,哪些输出的物理量以及它们之间的内 在关系,就可以设计出以MCU为核心的嵌入式应用系统,并通过编程实现输入/输出 之间的关系。本节从一般角度讨论这个问题,给读者一个嵌入式应用系统的初步轮廓, 同时希望读者在本书的基本实验完成之后,再一次体会这种一般构成 1.3.1嵌入式产品的一般构成 个以MCU为核心,比较复杂的嵌入式产品或实际嵌入式应用系统,包含模拟量 的输入、模拟量的输岀,开关量的输入、开关量的输岀及数据通信的部分。而所有嵌入 式系统中最为简单和普遍的则是嵌入式测控系统。图1-3给出了一个典型的嵌入式测控 系统框图。 MCU 传感器: 放大器 模拟量驱动 实际模 将实际物将微弱电信转 转N机构 模拟量 拟信号 理信号转刈号放大成换 换将MCU送出 换为微弱MCU可接接接的信号放大 执行机构 电信号 受的电信号 开关量驱动 将实际开关信号 机构: 开关量 实际开关信号 转换成MCU可接 I/0接口 将MCU送出 受的电信号 执行机构 的信号放大 其他输入信号 其他输出信号 MCU工作 通信接口 通信信号 其他 支撑电路 兀配电路 通信设备 图1-3一个典型的嵌入式测控系统框图 MCU工作支撑电路保障MCU能正常运行,如电源电路、晶振电路及必要的滤波 电路等。 实际模拟信号一般来自相应的传感器。例如,要测量室内的温度,就需要温度传感 器。但是,一般传感器将实际的模拟信号转成的电信号都比较弱,MCU无法直接获得 第1章概述 该信号,需要将其放大,然后经过模/数(AD)转换变为数字信号,进行处理。目前许多 MCU内部包含AD转换模块,实际应用时也可根据需要外接AD转换芯片。常见的模 拟量有:温度、湿度、压力、重量、气体浓度、液体浓度、流量等。对MCU来说,模 拟信号通过AD转换变成相应的数字序列进行处理。 实际开关信号一般也来自相应的开关类传感器。如光电开关、电磁开关、干簧管(磁 开关)、声控开关、红外开关等等,一些儿童电子玩具中就有一些类似的开关。手动开 关也可作为开关信号送到MCU中。对MCU来说,开关信号就是只有“0”和“1”两 种可能值的数字信号。 其他输入信号通过某些通信方式与MCU沟通。常用的通信方式有:异步串行(SCD) 通信方式、串行外设接口(SPI)通信方式、并行通信方式、USB通信方式、网络通信(uIP) 方式等。 在执行杋构中,有开关量执行机构,也有模拟量执行机构。开关量执行机构只有 开”、“关”两种状态。模拟量执行杋构需要连续变化的模拟量控制。MCU一般是不 能直接控制这些执行机构,需要通过相应的驱动电路实现。还有一些执行机构,既不是 通常开关量控制,也不是通常DA转换量控制,而是“脉冲”量控制,如控制调频电 动机,MCU则通过软件对其控制。 3.2嵌入式产品的一般开发方法 嵌入式产品的开发应遵循软件工程的原则。但是,软件工程的原则是要自己在学习 软件工程之后,在实践中慢慢体会的。做任何一个项目,首先要在计算机硬盘上建立 个以项目名称(或简称)为文件夹名的文件夹,以便统一管理项目开发过程中的资料 同时在这个独立的文件夹下,建立“参考资料”、“设计文档”、“硬件设计”、“软件设计” “其他”等下一级文件夹,必要时还要建立一些以日期命名的文件夹,随着工作的进展 安排在相应的文件夹下。总之,要清晰、合理地放置您的工作资料。对于一些中小型嵌 入式产品或应用系统的开发过程,在进行基本需求与功能分析之后,可以进入设计阶段 这里对设计阶段开始后的工作过程,提出一些建议和步骤,供参考。注意每个过程的工 作必须写入设计文挡。 基本输入/输出分析 对系统进行输入输出分析是整个工程的第一步,应该以MCU系统为核心展开。 输入分析分为开关量类与模拟量类,应分别列表。开关类输入样表见表1-1。模拟量类 输入样表见表1-2。输出分析也可分为开关量类与模拟量类。开关类输出样表见表1-3 模拟量类输岀样表见表1-4。还可以对通信类输入、键盘类输入进行必要的列表,参照 进行 10

...展开详情
试读 127P 嵌入式技术基础与实践

评论 下载该资源后可以进行评论 3

半梦_半醒 感谢分享,嵌入入门的好东西。
2014-10-28
回复
乔布斯的同学 感谢楼主,超赞的资源,谢谢!!!
2014-06-26
回复
ecnu09 非常好的资源,STM32的各种外设都有例程,看起来也很清楚,多谢分享。
2013-12-05
回复
img
mazaisantan

关注 私信 TA的资源

上传资源赚积分,得勋章
    最新推荐
    嵌入式技术基础与实践 16积分/C币 立即下载
    1/127
    嵌入式技术基础与实践第1页
    嵌入式技术基础与实践第2页
    嵌入式技术基础与实践第3页
    嵌入式技术基础与实践第4页
    嵌入式技术基础与实践第5页
    嵌入式技术基础与实践第6页
    嵌入式技术基础与实践第7页
    嵌入式技术基础与实践第8页
    嵌入式技术基础与实践第9页
    嵌入式技术基础与实践第10页
    嵌入式技术基础与实践第11页
    嵌入式技术基础与实践第12页
    嵌入式技术基础与实践第13页
    嵌入式技术基础与实践第14页
    嵌入式技术基础与实践第15页
    嵌入式技术基础与实践第16页
    嵌入式技术基础与实践第17页
    嵌入式技术基础与实践第18页
    嵌入式技术基础与实践第19页
    嵌入式技术基础与实践第20页

    试读已结束,剩余107页未读...

    16积分/C币 立即下载 >