单片机应用系统设计课件_第1页
单片机应用系统设计课件_第2页
单片机应用系统设计课件_第3页
单片机应用系统设计课件_第4页
单片机应用系统设计课件_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十章单片机应用系统设计1第十章单片机应用系统设计110.1单片机应用系统概述一、单片机应用系统的设计方法单片机应用系统的技术要求各不相同,针对具体的任务,设计方法和步骤也不完全相同。为完成某一任务的单片机应用系统需要包含硬件和软件系统。硬件和软件必须紧密结合,协调一致才能正常工作。在系统研制过程中,硬件设计和软件设计不能截然分开。硬件设计时应考虑软件设计方法,而软件也一定是基于硬件基础上进行设计的。这就是所谓的“软硬结合”。单片机应用系统的研制过程包括确定任务、总体设计、硬件设计、软件设计、系统调试、产品化等几个阶段。它们不是绝对分开的,有时是交叉进行的。210.1单片机应用系统概述2二、单片机应用系统的开发工具单片机应用系统开发必须经过调试阶段,只有经过调试才能发现问题,改正错误,最终完成开发任务。实际上,对于较复杂的程序,大多数情况下都不可能一次性就调试成功,即使是资深程序员也是如此。单片机只是一块芯片而已,本身并无开发能力,要借助开发工具才能实现系统设计。开发工具主要包括电脑、编程器(又称写入器)、仿真机。如果使用EPROM作为存储器还要配备紫外线擦除器。其中必不可少的工具是电脑和编程器(当然对于在线可编程(ISP)的单片机,如89S51,也可以不用编程器,而通过下载电缆下载)。3二、单片机应用系统的开发工具31.仿真机及其使用(1)开发环境单片机程序的编写、编译、调试等都是在一定的集成开发环境下进行的。集成开发环境仿真软件(IDE)将文件的编辑,汇编语言的汇编、连接,高级语言的编译、连接高度集成于一体,能对汇编程序和高级程序进行仿真调试。单片机程序如果是汇编编写的,文件名后必须加后缀名“.ASM”。如果是C51编写的,必须加后缀名“.C”。41.仿真机及其使用4(2)仿真机的使用为了实现目标系统的一次性完全开发,必须用到仿真机(也称在线仿真机)。在线仿真机的主要作用是能完全“逼真”地扮演用户单片机的角色,且能在集成开发环境中对运行程序进行各种调试操作,即时发现问题,即时修改程序,从而提高工作效率,缩短开发周期。使用时,在线仿真机通过RS-232插件与电脑的COM1或COM2端口相连。在断电情况下,拨下用户系统的单片机和EPROM,代之以仿真头,如下图所示。运行仿真调试程序,通过跟踪执行,能即时发现软硬件方面的问题并进行修正。当设计达到满足系统要求后,将调试好的程序编译时形成的二进制文件用编程器烧写到芯片中,一个应用系统就调试成功了。5(2)仿真机的使用5编程器与计算机的连接2.编程器当我们编写好的程序在集成开发环境编译通过后,会形成一个二进制文件(文件名与源程序文件名相同,后缀名为“.BIN”)或十六进制文件(后缀名为“.HEX”),即形成所谓的目标程序。这个目标程序必须利用编程器才能将目标文件烧写到单片机的程序存储器中,从而让单片机系统的硬件和软件真正结合起来,组成一个完整的单片机系统。编程器的主要功能是将目标程序烧写到芯片中,其与电脑的连接如下图所示。6编程器与计算机的连接2.编程器610.2单片机应用系统实例例:空调机温度控制系统1.设计要求用MCS-51单片机设计一个空调机的温控系统。具体要求如下:实时测量环境温度,并显示当前温度值。当室温度高于设定温度,压缩机运转,使室温降低。当室温低于设定温度,压缩机停止运转。温度设定功能,通过按键输入压缩机启停的温度设定值。设定温度过程中显示设定温度值,以便于操作。设定完毕后,改为显示当前测定温度值。710.2单片机应用系统实例例:空调机温度控制系统72.总体方案(1)系统设计根据设计要求,设计出温度控制系统的基本结构框图如下图所示。82.总体方案8系统由四个主要功能模块组成:温度测量、按键输入,数码显示以及控制压缩机启停模块。温度测量模块的主要功能是将环境温度转化为电参数(电压),并通过A/D转换得到数字量送入单片机。按键输入模块主要功能是实现设定温度值的输入。LED显示模块主要功能是显示当前环境温度值。因空调对温度精度要求不高,本例只要求显示两位整数的温度值。压缩机控制模块主要功能是单片机根据环境温度与设定温度的比较结果送出开关信号、控制压缩机的启停。9系统由四个主要功能模块组成:温度测量、按键输入,数码显示以及(2)关键技术本系统中的关键技术是如何实时测量室内温度。在对外界物理量如温度、湿度、压力等进行测量时,首先要解决的问题是如何将这些非电量转换为电参数(电阻、电压、电流),其次,是如何将模拟量(电压)转换为数字量。显然对温度的测量,温度传感器是必不可少的。温度传感器的种类、型号很多。在本例中选用的是AD590温度传感器。AD590产生的电流与绝对温度成正比,它可接收的工作电压为4V~30V,检测的温度范围为-55度~+150度,具有良好的线性输出性能,温度每增加1度,电流增加1微安。

10(2)关键技术103.硬件设计系统的硬件电路包括主机、温度控制、压缩机的控制、按键及显示5个部分,系统硬件电路原理图如下图所示。113.硬件设计1112124.软件设计(1)系统资源分配内部RAM分配情况。(2)软件设计流程主要包括5个模块:主程序按键设定温度模块十进制调整和数据转换模块控制模块显示模块134.软件设计1310.3单片机应用系统练习题目一电子钟用MCS-51单片机设计时钟控系统。具体要求如下:1.24小时走时;2.6位数码管显示时、分、秒;3.3个按键,2个分别用于时、分调整,1个用于是否允许调整。4.写出设计方案,画出完整的电路原理图(包括电源、时钟电路、复位电路),编写程序。1410.3单片机应用系统练习题目一电子钟14题目二数字温度计用MCS-51单片机设计数字温度计。具体要求如下:1.5位数码管显示温度,可显示摄氏度或华氏度;2.温度显示范围-20.0度~+50.0度;3.1个按键用于显示摄氏度或华氏度切换。4.写出设计方案,画出完整的电路原理图(包括电源、时钟电路、复位电路),编写程序。15题目二数字温度计15题目三波形发生器用MCS-51单片机设计一个波形发生器。具体要求如下:1.可根据按钮选择连续输出锯齿波、三角波或正弦波形;2.4个按键,3个分别用于选择输出锯齿波、三角波、正弦函数;一个用于改变输出波形的周期。3.写出设计方案,画出完整的电路原理图(包括电源、时钟电路、复位电路),编写程序。16题目三波形发生器1610.4串行扩展技术一、串行扩展总线及特点串行扩展总线技术是新一代单片机技术发展的一个显著特点。串行扩展总线有电路结构简单,程序编写方便,易于实现用户系统软硬件的模块化、标准化等优点。常用的串行扩展总线和接口有1-wire总线、I2C总线、SPI总线、Microware总线和CAN总线等。1710.4串行扩展技术一、串行扩展总线及特点17(1)UART串行扩展接口(UniversalAsynchronousReceiver/Transmitter)UART通用异步收发器,既能同步又能异步通信的硬件电路称为USART。UART是用于控制计算机与串行设备的芯片,它提供了RS-232C数据终端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了。

UART接口是二线制,8051单片机的UART既能作通用异步接收和发送器,又能作同步移位寄存器。它可以实现8051单片机系统之间点对点的单机通信或多机通信,也可以实现扩展I/O口。18(1)UART串行扩展接口18(2)I2C(InterIntegratedCircuit)串行扩展总线I2C总线是Philips公司推出的芯片间串行传输总线。它用两根线实现数据传送,可以极为方便地构成多机系统和外围器件扩展系统。

I2C总线是二线制,采用器件地址的硬件设置方法,通过软件寻址完全避免了器件的片选线寻址方法,从而使硬件系统具有简单灵活的扩展方法。I2C总线简单,结构紧凑,易于实现模块化和标准化。

I2C总线传送速率主要有两种:一种是标准S模式(100Kb/s),另一种是快速F模式(400Kb/s)。19(2)I2C(InterIntegratedCircui(3)SPI(SerialPeripheralInterface)串行扩展接口SPI总线是Motorola公司提出的一种同步串行外设接口。允许MCU与各种外围设备以同步串行方式进行通信。其外围设备种类繁多:最简单的TTL移位寄存器到复杂的LCD显示驱动器、网络控制器等。

SPI总线是三线制,可直接与多种标准外围器件直接接口,在SPI从设备较少而没有总线扩展能力的单片机系统中使用特别方便。即使在有总线扩展能力的系统中采用SPI设备也可以简化电路设计,省掉很多常规电路中的接口器件,从而提高了设计的可靠性。20(3)SPI(SerialPeripheralInter(4)Microware串行扩展接口Microware总线是NS公司提出的串行同步双工通信接口,用于8位COP800系列单片机和16位HPC系列单片机。

Microware总线是三线制,由一根数据输出(SO)线、一根数据输入(SI)线和一根时钟(SK)线组成。所有从器件的时钟线连接到同一根SK线上,主器件向SK线发送时钟脉冲信号,从器件在时钟信号的同步沿输出/输入数据。主器件的数据输出线SO和所有从器件的数据输入线相接,从器件的数据输出线都接到主器件的数据输入线SI上。21(4)Microware串行扩展接口21(5)单总线(1-wire)串行扩展总线1-wire总线是Dallas公司研制开发的一种协议,用于便携式仪表和现场监控系统。

1-wire总线是利用一根线实现双向通信,由一个总线主节点、一个或多个从节点组成系统,通过一根信号线对从芯片进行数据的读取。每一个符合1-wire协议的从芯片都有一个唯一的地址,包括8位分类码、48位的序列号和8位CRC代码。主芯片对各个从芯片的寻找依据这64位的不同来进行。单总线节省I/O引脚资源、结构简单、成本低廉、便于总线扩展和维护。22(5)单总线(1-wire)串行扩展总线22(6)USB(UniversalSerialBUS)串行扩展总线USB总线是Compaq、Intel、Microsoft、NEC等公司联合制定的一种计算机串行通信协议。USB比较于其他传统接口的一个优势是即插即用的实现,即插即用(Plug-and-Play)也称为热插拔(HotPlugging)。数据传输速度快,USB1.1接口的最高传输率可达12Mb/s;USB2.0接口的最高传输率可达480Mb/s。扩展方便,使用USBHub扩展,可以连接127个USB设备,连接的方式十分灵活。23(6)USB(UniversalSerialBUS)串行(7)CAN(ControllerAreaNetwork)串行扩展总线CAN总线是德国Bosch公司最先提出的多主机局域网,是国际上应用最广泛的现场总线之一。最初,CAN被设计作为汽车环境中的微控制器通信,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络。比如:发动机管理系统、变速箱控制器、仪表装备。

在由CAN总线构成的单一网络中,理论上可以挂接无数个节点。实际应用中,节点数目受网络硬件的电气特性所限制。CAN可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。另外,硬件的错误检定特性也增强了CAN的抗电磁干扰能力。当信号传输距离达到10km时,CAN仍可提供高达50Kbit/s的数据传输速率。24(7)CAN(ControllerAreaNetwork二、I2C串行扩展总线

1.I2C总线接口电路结构在I2C总线上可以挂接各种类型的外围器件,如RAM/EEPROM、日历/时钟芯片、A/D转换器、D/A转换器、以及由I/O口、显示驱动器构成的各种模块。SDA:串行数据线SCL:串行时钟25二、I2C串行扩展总线在I2C总线上可以挂接各种类型的外例:AT24C01是Atmel公司生产的具有I2C总线接口的E2PROM,是AT24C××系列存储器中的一种,芯片存储容量为1Kb(128×8位)。AT24C01引脚如下图所示。SCL:串行时钟端。SDA:串行数据端,漏极开路,需接上拉电阻到VCC。WP:写保护,当WP为高电平时存储器只读;当WP为低电平时存储器可读可写。A2~A0:芯片地址。26例:AT24C01是Atmel公司生产的具有I2C总线2.I2C数据格式

启动信号

从器件地址、读/写位

应答信号

若干数据字节

停止信号

272.I2C数据格式启动信号273.I2C地址设定I2C总线器件的7位从器件地址(SLA-SlaveAddress)R/WA0A1A2DA0DA1DA2DA3器件识别码如:RTC1101EEPROM1010器件选择码允许在共用的I2C总线上同时接8个同类器件283.I2C地址设定I2C总线器件的7位从器件地址(SLA-S4.I2C数据传送I2C的主要命令只有读、写两种,虽然读写的字节根据具体器件的不同而不同,但其时序关系不会发生改变。例:Dallas公司的时钟发生器DS1085操作时序。294.I2C数据传送I2C的主要命令只有读、写两种,虽303031315.I2C虚拟实现I2C器件SCLEQUP1.0SDAEQUP1.1325.I2C虚拟实现I2C器件SCLEQUP1.0S(1)发送起始信号和停止信号33(1)发送起始信号和停止信号33START:SETBSDASETBSCLNOP;NOP的数目根据时钟频率确定NOP;此处用NOP来延时CLRSDANOPNOPCLRSCLRET34START:SETBSDASETBSCLNOP;NOSTOP:CLRSDASETBSCLNOP;此处用NOP来延时NOP;NOP的数目根据时钟频率确定SETBSDANOPNOPCLRSDACLRSCLRET35STOP:CLRSDASETBSCLNOP;此处用(2)应答位检查子程序TACK:SETBSDA;设置SDA为输入方式SETBSCL;产生第9个时钟脉冲NOP;此处用NOP来延时NOP;NOP的数目根据时钟频率确定CLR30H;正常标志MOVC,SDAJNCTEND;若正常应答,则转移SETB30HTEND:CLRSCLRET36(2)应答位检查子程序TACK:SETBSDA;设置SDTXBYT:MOVR4,#08H;要发送的数据长度为8位TX0:RLCA;将待发送的位送入位CY中JCTX1;CY位为1转到TX1CLRSDA;置为低电平,发送0SETBSCL;时钟高电平数据保持数据稳定NOP;延时NOPCLRSCL;时钟脉冲变为低电平,准备改变数据DJNZR4,TX0;若8位未发送完,转TX0继续RET;8位发送完成返回TX1:SETBSDA;置为高电平,发送1SETBSCL;时钟为高电平保持数据稳定NOP;延时NOPCLRSCL;时钟脉冲变为低电平,准备改变数据CLRSDA;将数据改为低电平DJNZR4,TX0;若8位未发送完,转TX0继续RET;8位发送完成返回(3)字节发送子程序37TXBYT:MOVR4,#08H;要发送的数据长度为8位RXBYT:MOVR4,#08H;要接收的数据长度为8位RX0:SETBSDA;设置SDA为输入方式SETBSCL;SDA上数据有效MOVC,SDA;读入SDA引脚状态MOVA,R5;将存放结果送入A中RLCA;将读出的1位移入A中MOVR5,ACLRSCL;一个脉冲结束,SDA上数据无效DJNZR4,RX0;未读完8位,转到RX0RET;读完返回(4)字节接收子程序38RXBYT:MOVR4,#08H;要接收的数据长度为8位10.5单片机系统的抗干扰技术一、干扰源及其分类所谓干扰,一般是指有用信号以外的噪声,在信号输入、传输和输出过程中出现的一些有害的电气变化现象。这些变化迫使信号的传输值、指示值或输出值出现误差,出现假像。干扰对电路的影响,轻则降低信号的质量,影响系统的稳定性;重则破坏电路的正常功能,造成逻辑关系混乱,控制失灵。3910.5单片机系统的抗干扰技术一、干扰源及其分类39常见干扰的种类40常见干扰的种类40内部和外部干扰示意图41内部和外部干扰示意图411.装置开口或隙缝处进入的辐射干扰(辐射)2.电网变化干扰(传输)3.周围环境用电干扰(辐射、传输、感应)4.传输线上的反射干扰(传输)5.系统接地不妥引入的干扰(传输、感应)6.外部线间串扰(传输、感应)7.逻辑线路不妥造成的过渡干扰(传输)421.装置开口或隙缝处进入的辐射干扰(辐射)428.线间串扰(感应、传输)9.电源干扰(传输)10.强电器引入的接触电弧和反电动势干扰(辐射、传输、感应)11.内部接地不妥引入的干扰(传输)12.漏磁感应(感应)13.传输线反射干扰(传输)14.漏电干扰(传输)438.线间串扰(感应、传输)43二、干扰对单片机系统的影响正常程序:13F4A274MOVC,2EH.413F6E544MOVA,44H13F83402ADDCA,#213FA13RRCA13FBF544MOV44H,A13FD9274MOV2EH.4,C如果干扰使程序计数器PC出错,在某时刻变为13F5H,CPU将执行如下程序片段,掉进一个死循环:13F574E5MOVA,#0E513F74434ORLA,#3413F902113F5LJMP13F5H44二、干扰对单片机系统的影响正常程序:如果干扰使程序计数器P三、硬件抗干扰技术1.抗干扰稳压电源(1)应用系统的供电线路和产生干扰的用电设备分开供电。(2)通过低通滤波器和隔离变压器接入电网。(3)整流组件上并接滤波电容。滤波电容选用1000pF~0.01μF的瓷片电容,。(4)采用高质量的稳压电源。45三、硬件抗干扰技术1.抗干扰稳压电源45抗干扰稳压电源抗干扰稳压电源46抗干扰稳压电源抗干扰稳压电源4689C512.输入输出隔离光电耦合器隔离4789C512.输入输出隔离光电耦合器隔离47光电耦合式固态继电器48光电耦合式固态继电器483.过压保护电路在输入通道上采用一定的过压保护电路,以防引入高压,损坏系统电路。过压保护电路由限流电阻和稳压管组成,稳压值以略高于最高传送信号电压为宜。对于微弱信号(0.2V以下),采用两支反并联的二极管,也可起到过压保护作用。493.过压保护电路49四、软件抗干扰技术

1.开关量输入方法50四、软件抗干扰技术1.开关量输入方法502.程序执行过程中的软件抗干扰“指令冗余”与“软件陷阱”下面三条指令即组成一个“软件陷阱”:NOPNOPLJMPERR一般使用在:1)未使用的中断向量区2)未使用的大片EPROM空间512.程序执行过程中的软件抗干扰“指令冗余”与“软件陷阱”53.WATCHDOG

如果“跑飞”的程序落到一个临时构成的死循环中,冗余指令和软件陷阱都将无能为力,这时可采取WATCHDOG(俗称“看门狗”)措施。WATCHDOG有如下特性:(1)本身能独立工作,基本上不依赖于CPU。CPU只在一个固定的时间间隔内与之打一次交道,表明整个系统“目前尚属正常”。(2)当CPU落入死循环后,能及时发现并使整个系统复位。523.WATCHDOG52硬件WATCHDOG电路53硬件WATCHDOG电路534.数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论