APP下载

基于单片机的的超声波测距仪

2017-05-18邵阳学院信息工程系徐江维

电子世界 2017年9期
关键词:测距仪管脚测距

邵阳学院信息工程系 徐江维 李 菲

基于单片机的的超声波测距仪

邵阳学院信息工程系 徐江维 李 菲

本文设计了一款基于ST89C52RC单片机的超声波测距仪器,ST89C52RC单片机作为控制核心,片外结合T/R-40-12小型超声波传感器模块、LCD1602液晶显示器模块、晶振电路模块以及复位电路等模块而构成超声波测距的硬件系统。通过系统上的超声波模块来采集使用者距离障碍物的距离,然后通过ST89C52RC单片机对采集数据进行处理,经过大量的实验测试,本测距仪器性能稳定,携带便捷,能够做到随时随地地测量距离,不仅如此,它对单片机以及超声波技术的推广也具有一定的积极作用。

ST89C52RC单片机;LCD1602液晶显示器;距离

本文以基于超声波测距为研究基础,结合其他必要模块设计一款简单实用并且价格低廉的手持超声波测距系统。根据文献显示,超声波最早是由斯帕拉捷发现的,他根据蝙蝠能在黑夜中自由快速飞行,经过大量实验后,得出了蝙蝠能够发出一种人耳听不见的声波,通过这种超声波的指引,蝙蝠才得以自由飞翔,由于这种声波的频率大于20khz,超过了人耳听觉的上限,因此被称为超声波,经过后来相关仪器的测量,发现超声波具有很强的能量集中性,不容易发散,因此非常适合测距、测速。

一、基于ST89C52RC单片机的超声波测距硬件方案设计

图1为基于ST89C52RC单片机的超声波测距仪器总体硬件框图设计,共分为四大模块,即ST89C52RC单片机最小系统、超声波模块、显示模块以及电源模块。51单片机最小系统有ST89C52RC单片机、晶振电路以及复位电路组成,主要负责整个系统的信号处理、超声波模块的驱动、液晶屏的驱动的驱动,是这个系统的控制核心;超声波模块主要用于向测量物发送超声波信号,并将被反射回来的超声波进行接收,该模块是实现测距功能的核心元件;LCD1602是本系统的显示模块,用于显示测量物距离以及系统的其他参数;电源模块用于给整个系统提供能源。

图1 整体系统框图

对于ST89C52RC单片机最小系统的构建,主要表现在两个方面:一是晶振电路的设计,二是复位电路的构建;将这两个电路和ST89C52RC单片机进行组合后,ST89C52RC最小系统就完成了。

二、软件系统设计

基于ST89C52RC单片机的超声波测距仪系统的软件流程图设计,上电后系统首先进入初始化阶段,在该阶段ST89C52RC单片机、超声波模块以及液晶屏内部的寄存器被清零,为接下来的正常工作做准备。初始化完成后,系统就进入了正式的工作状态,ST89C52RC单片机首先驱动HC—SR04超声波模块发射超声波时,其发射中断管脚会同时输出一个高电平给ST89C52RC单片机的P3.2中断管脚INT0,在INT0中断时计时器T0被立即启动,开始计时;当超声波返回并被HC—SR04接收到时,其接收中断管脚会同时输出一个脉冲给ST89C52RC单片机的P3.3中断管脚INT1,在INT1中断时立即停止计时器T0的工作,这样ST89C52RC单片机就得到了超声波发射和接收过程所用的时间,由于超声波在空气中的传输速度是340m/s,这样将两者相乘并除以2,这样就得到了距离被测物的距离大小。与此同时ST89C52RC单片机驱动液晶屏将距离大小显示出来,供用户查看。HC-SR04超声波测距流程设计,当系统上电后HC-SR04超声波模块经过初始化过程后测距过程进入正常工作阶段。 测距过程开始时,ST89C52RC单片机通过内部的精准定时电路产生一串频率稳定的脉冲信号并经过P3.2管脚传送给HC-SR04的Trig管脚,与此同时单片机的定时器开始计时。HC-SR04内部的晶振在感受到Trig管脚的脉冲信号后出现共振向外发送超声波,当超声波在传送途中遇到障碍物时会被返回,并最终会被HC-SR04的接受器接收到,与此同时单片机的定时器立即停止计时并将计时值换算成和障碍物的距离,这就是超声波测距的一个流程。本系统的LCD1602液晶显示子程序流程设计,使用者在给系统供电后,LCD1602的液晶背光灯被打开,然后LCD1602内部存储芯片和RAM会自动进行清零等初始化工作,接着主控核心51单片机会通过P0管口发出指令代码并传送到LCD1602的DB0~DB7八个管脚,LCD1602液晶显示器接收到指令代码后内部会处于一段暂时忙碌的状态,此时单片机是不能对LCD1602进行任何操作的,只有忙碌阶段结束后LCD1602才能重新接受单片机发来的指令或者数据,然而单片机却不能自己判断LCD1602是否处于忙碌状态,必须发送一个判忙代码后才能清楚的知道LCD1602当前是否处于忙碌,另外有经验的程序员通常不对LCD1602进行判忙,只要在写命令后加一个适当的延时程序让单片机在这段时间内处于等待状态即可,这样就省略了“判忙”过程,这样带来的好处是单片机就不用对LCD1602进行读取了,也就为单片机省去了一个宝贵IO口的消耗。在单片机发送完指令后就开始发送要显示的内容了,内容的数据也是通过P0口的八个管脚发送出来,然后直接传送给LCD1602的DB0~DB7八个管脚,这样就完成了一个字符的显示流程,而要在LCD1602上显示字符串,那么将进行多个这种过程后才能实现我们想要的结果。

三、结语

利用超声波进行测距有许多优点比如不受光强度、色彩和电磁场等外界因素的影响,而且超声波传感器的价位较低、结构也较为简单,超声波以声速传播,方便收发与计算。在汽车倒车雷达、移动机器人的避障、特别是测量距离等许多方面都已有了非常普遍的应用。 本次设计的超声波测距仪是在STC89C52RC单片机的基础上设计的,在分析和了解了超声波的一些优点和特性后,又查看了利用超声波测距的基本原理。最后决定使用STC89C52RC单片机系统和超声波传感器共同组成。设计的超声波测距仪的硬件部分主要包括电源及复位模块、单片机与超声波模块组成的超声波发射模块、超声波接收模块、LCD1602显示模块。软件部分主要包括单片机主程序、根据超声波发射与接收计算距离程序、LCD1062距离显示程序、按键控制程序,这样安排使得系统具有模块化的特点。系统容易进行控制,具有可靠地的性能,具有较高的测量精度,最重要的是能对距离进行实时测量。

[1]沈燕,高晓蓉,孙增友,李金龙.基于单片机的超声波测距仪设计[J].现代电子技术,2012(07):34.

[2]张可儿.基于单片机的超声波测距仪设计[J].自动化与仪器仪表,2017(01).

[3]孙世菊.单片机控制的超声波测距仪汽车倒车系统研究[J].时代汽车,2016(05):137

[4]付雪健,孟俊焕.基于51单片机超声波测距仪倒车雷达报警装置设计[J].内蒙古科技与经济,2016(21):178.

猜你喜欢

测距仪管脚测距
类星体的精准测距
DME/N询问脉冲波形优化与计算
基于单片机的汽车倒车测距仪设计
浅谈超声波测距
基于图像处理的异型电子元器件管脚偏移误差检测方法研究
CMOS数字IC管脚电容的估算与测量
基于JADE的测距仪脉冲干扰抑制方法
基于PSOC超声测距系统设计
基于小波变换的测距仪脉冲干扰抑制方法
相对差分单项测距△DOR