基于Proteus的51单片机超声波测距
之前发过一期使用51单片机开发板完成的超声波测距。今天再发一个基于Proteus仿真的超声波测距。Proteus8.0之前的版本中都没有超声波测距这个模块,所以在Proteus7的软件中大部分超声波测距仿真都是采用的网友自制的超声波测距模块,自制的模块在仿真时交互性不是很友好,所以今天分享的仿真是基于Proteus8.8版本。文章的最后会告知如何仿真和软件的下载方式。

超声波测距模块在Proteus中的名称叫做SRF04,它的工作原理与之前文章中介绍的超声波模块工作原理一致,都是通过一个IO控制超声波模块的发射,通过另外一个IO对超声波接收端的信号进行检测,计算出超声波信号的运动时间,进而计算出模块与障碍物之间的距离。

原理方面就不在多说了,贴一下仿真图。

今天分享的超声波测距仿真如图所示,显示部分使用的是LCD1602,由于声波在不同温度下的传播速度不同,所以仿真中使用DS18B20对环境温度进行采集,以便实现超声波的温度补偿。


部分程序截图
检测部分程序如上图所示,程序的大致流程为显示初始化->外设初始化->检测DS18B20温度->发送超声波并启动定时器->等待声波信号返回->计算距离->判断距离是否在范围内->更新显示->进入下一个循环。

仿真运行时效果如图所示。在该仿真的基础上增加按键、蜂鸣器等外设就可以实现倒车雷达的功能。有兴趣的小伙伴可以自行下载研究。
如果想要获取仿真和程序可以关注微信公众号“懂事电子设计”查看往期文章,或者私信作者。