欢迎来到天天文库
浏览记录
ID:27113779
大小:50.50 KB
页数:3页
时间:2018-12-01
《基于at89s52的超声波测距系统设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于AT89S52的超声波测距系统设计 摘要:介绍了一种基于AT89S52的超声波测距系统。该系统采用HC-SR04超声波模块,以DS18B20传感器测取环境温度,对声速进行温度补偿,提高了测量精度,通过LCD1602显示环境温度和测量结果。详细的论述了系统的组成原理和软件构成。系统由主控芯片,测温单元,超声波传感器模块和显示模块四部分构成,实现测距,测量精度可达0.3cm,测量范围在3cm到400cm。 关键词:单片机;温度补偿;超声波 中图分类号:TP271 4软件设计 系统的软件主要包括以下功能模块①DS18B20温度传感器接口模块,分为初始化子程序
2、,写入子程序和读取子程序等;②LCD显示模块,包括LCD初始化,写数据,写命令和显示等程序;③温度补偿与距离计算模块,分为超声波发射控制程序,接收处理程序,温度补偿程序和距离计算程序;④主模块,主要包括系统的初始化,及各子程序的调度管理。图3是程序流程图。 4.1超声波往返时间计算子程序 voidtest(void) {StartModual();//启动超声波模块 _nop_();//延时以防止接收端 _nop_();//接到发射波 _nop_(); _nop_(); _nop_(); p是从DS18BB0读取的16位二进制温度数值,在对速度
3、进行温度补偿的时候需要根据DS18B20协议转换成浮点数tp。 voidcalculater() { floatv;//声速 floattp;//温度 time=TH0*256+TL0; TH0=0; TL0=0; if(temp<0x8000)//温度为正直 tp=temp*0.0625; else//温度为负值 tp=temp*(-0.0625); c=331.4+0.61*tp;//温度补偿 distance=(time*c/(2*100))/100; } 5实验结果与结论 利用游标卡尺对测距仪标定,测量数据如表1。
4、 利用AT89S52单片机设计的超声波测距仪易于操作,读数直观,功耗较低,体积小,便于嵌入其他系统。经实际使用,该测距仪性能稳定,成本低。采用了温度补偿单元,提高了测量精度,测量精度可达0.3cm,最小测量距离为3cm,最大测量距离达400cm,达到了很好的效果。 中国.L].北京:电子工业出版社,2005:305-306. [5]马云峰,陈子夫,李培全.数字温度传感器DS18B20的原理与应用[J].电子元器件应用,2002,4(1-2).
此文档下载收益归作者所有