基于单片机声波测距.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
机电信息工程学院 单片机系统课程设计报告 设计题目: 超声波测距 学生姓名: 指导教师: 目 录 一、设计任务和性能指标 2 1.1设计任务 2 1.2性能指标 2 二、设计方案 3 三、系统硬件设计 4 3.1单片机最小系统 4 3.2 超声波发射电路 4 3.3 超声波检测接收电路 5 3.4.温度补偿电路 6 3.5显示电路 7 四.系统软件设计 8 4.1 主程序设计 8 4.2 温度补偿子程序 8 五.调试及性能分析 10 5.1调试步骤 10 5.2 性能分析 10 六.心得体会 11 参考文献 12 附录1 系统硬件电路图 13 附录2 程序清单 14 一、设计任务和性能指标 1.1设计任务 利用单片机及外围接口电路(键盘接口和显示接口电路)设计制作一个含有温度补偿的超声波测距仪器,用LED把环境温度和测距仪距被测物的距离显示出来。 要求用AD6.0 画出系统的电路原理图,印刷电路板,绘出程序流程图,并给出程序清单。 1.2性能指标 距离显示:用三位LED数码管进行显示(单位是CM) 环境温度:用三位数码管进行显示温度(绝对温度)。 测距范围:5CM到 300CM之间。 键位:复位键 、便携电源开关、USB供电开关,温度显示距离显示 二、设计方案 按照系统设计的功能的要求,初步确定设计系统由单片机主控模块、电源模块、显示模块、键扫描模块、超声波发射模块,超声波接收模块,温度补偿模块共七个模块组成。 主控芯片使用51系列STC89C52单片机,该单片机工作性能稳定,同时也是在单片机课程设计中经常使用到的控制芯片。本设计在接受模块采用了由索尼公司生产的CX2016A红外接收芯片来实现超声波的接收。CX2016A是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38KHz与测距超声波频率40KHz较为接近,可以利用它作为超声波检测电路。实验证明其具有很高的灵敏度和较强的抗干扰能力。同时通过改变部分参数来改变接受电路的灵敏度和抗干扰能力,所以我们采用该芯片作为接收模 3.4.温度补偿电路 温度传感器使用了DSl8B20数字温度计提供可选择的12位(二进制)温度读数来指示周围环境的温度信息。经过单线接口DQ与单片机进行数据交互。从主机CPU到DSl8B20仅需一条数据接线(和地线)。DSl8B20的电源可以由数据线本身提供而不需要接外部电源。由于每一个DSl8B20在出厂时已经给定了唯一的序号因此任意多个DSl8B20可以存放在同一条单线总线上实现多点温度测量。温度传感器DSl8B20的测温范围从-55摄 氏度到+125摄氏度增量值为0.5度可在l s(典型值)内把温度变换成数字量,因此采用DS18B20实现温度补偿电路的设计。 3.5显示电路 显示电路主要由74ls273芯片驱动,用PNPC8550三级管进行位选,七段共阳极数码管显示,硬件电路图如图3-5所示: 四.系统软件设计 4.1 主程序设计 主程序中包括温度补偿子程序,计算子程序,显示子程序 ,如图4-1所示: 在主程序设计中,我们采用了汇编编程。首先进行系统初始化。其次利用循环产生4个40KHZ的方波,由输出口进行输出,并开始计时。第三读取外界环境的温度,由该温度确定环境中的超声波传输速度。第四等待中断,若超声波被接收探头捕捉到,那么通过中断可测得超声波在环境中的传播时长。第五进行计算,求得测距仪到被测物的距离。第六进行距离显示。 4.2 温度补偿子程序 DS18B20正常工作需要严格的工作时序,操作起来很复杂,图4-2给出的是DS18B20的时序图,其控制程序如下: TEMP: SETB DQ NOP CLR DQ MOV R0,#0FBH TSR1: DJNZ R0,TSR1 SETB DQ MOV R0,#25H ; TSR2: JNB DQ TSR3 DJNZ R0,TSR2 ; TSR3: SETB FLAG1 CLR P2.0 AJMP TSR5 TSR4: CLR FLAG1 LJMP TSR7 TSR5: MOV R0,#06BH TSR6: DJNZ R0,TSR6 TSR7:SETB DQ RET ****

文档评论(0)

企业资源 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档