[农林牧渔]第9章 单片机应用系统开发技术.ppt

[农林牧渔]第9章 单片机应用系统开发技术.ppt

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[农林牧渔]第9章 单片机应用系统开发技术

9.1 单片机的开发系统及开发工具 9.2 单片机应用系统的设计原则与过程 9.3 单片机应用系统的抗干扰设计 9.4 单片机应用系统实例 本 章 结 束 * 3.程序“飞走”失控或进入死循环 系统受到干扰导致PC值改变后,PC值不是指向指令的首字节地址而可能指向指令中的中间字节单元即操作数,将操作数作为指令码执行;或使PC值超出程序区,将非程序区的随机数作为指令码运行,从而使程序失控“飞走”,或由于偶然巧合进入死循环。这里所说的死循环并非程序编制中出现的死循环错误,而是指正常运行时程序正确,只是因为干扰而产生的死循环。解决方法有: (1) 设置软件陷阱 (2) 设置“看门狗” * 9.4 单片机应用系统实例 9.4.1 数码管时钟电路的设计 1.系统设计引言 AT89C2051是一个低电压,高性能CMOS 8位单片机,片内含2k bytes的可反复擦写的只读Flash程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。 ? AT89C2051是一个功能强大的单片机,但它只有20个引脚,15个双向输入/输出(I/O)端口,其中P1是一个完整的8位双向I/O口,两个外中断口,两个16位可编程定时计数器,两个全双向串行通信口,一个模拟比较放大器。其引脚如图9-4所示。 * 图9-4 AT89C2051引脚图 * 2.系统设计原理 以AT89C2051单片机来实现时钟计时显示有如下几个要点: ⑴ 计算计数初值 为得到125ms定时,我们可使用定时器/计数器0,以工作方式1进行,假定单片机为6MHz晶振,设计数初值为X,则有如下等式:(216-X)×2=125000 计算得计数初值X=3036,二进制表示为110011011100B,十六进制表示为0CDCH。 ⑵ 设定定时器定时方式 ⑶ 实现方法 * ⑷ 设置时钟显示及显示缓冲区 假定时钟时间在6位LED数码管上进行显示(时、分、秒各占两位)。为此,要在内部RAM中设置显示缓冲区,共6个单元,与数码管对应关系见表9-1。显示缓冲区从左向右依次存放时、分、秒的数值。 表9-1 LED显示器的缓冲单位 LED5 LED4 LED3 LED2 LED1 LED0 7EH 7DH 7CH 7BH 7AH 79H * 3.系统硬件设计 数码管时钟电路如图9-5所示,其采用AT89C2051单片机最小化应用设计,LED显示用动态扫描方式实现,P1口输出段码数据,P3.0~P3.5口作扫描输出,P3.7接按钮开关。了提供LED数码管的驱动电流,用三极管9012作电源驱动输出。为了提高秒计时的精确中。本设计中的计时采用定时器T0中断完成,其余状态循环调用显示子程序,当P3.7端口开关按下时,转入调时功能程序。 * 图9-5 采用AT89C2051的六位时钟电路 * 4. 系统软件设计 ⑴ 主程序 (MAIN) 主程序的主要功能是进行定时器/计数器的初始化编程,然后通过反复调用显示子程序的方法,等待125ms定时中断的到来。系统主程序流程图如图9-6所示。 图9-6 系统主 程序流程图 * ⑶ 中断服务程序(PITO) 中断服务程序的主要功能是进行计时操作。程序开始先判断计数溢出是否满了8次,不满8次表明还没达到最小计时单位秒,中断返回;如满8次则表明已达到最小计时单位秒,程序继续向下执行,进行计时操作。中断服务程序流程如图9-8所示。 * 图9-8 中断服务程序流程图 * ⑸ 显示子程序 数码管显示的数据存放在内存单元79H~7EH中,其中79H~7AH存放秒数据,7BH~7CH存放分数据,7DH~7EH存放时数据,每一地址单元内均为十进制BCD码。由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据的对应段码存放在ROM表中。显示时,先取出79H~7EH某一地址中的数据,然后查得对应的显示用段码从P1口输出。P3口将对应的数码管选中,就能显示该地址单元的数据值。 * ? 9.4.2 汽车倒车测距仪应用实例 汽车倒车测距仪能测量并显示车辆后部障碍物离车辆的距离,同时用间歇嘟嘟声发出警报,嘟嘟声间隙随障碍物距离缩短而缩短,驾驶员不但可以直接观察显示的障碍物距离,还可以凭听觉判断车后障碍物离车辆距离的远近。 1.工作原理 2.主要技术指标: ① 最大探测距离:不小于5m。 ② 测距相对误差:<

文档评论(0)

skvdnd51 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档