基于单片机控制的超声波测距报警系统 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

基于单片机控制的超声波测距报警系统

来源:中国一卡通网  作者:不详  发布时间:2012-05-21 09:38:28  字体:[ ]

关键字:报警系统  超声波  单片机  传感器  

摘   要:  目前国内的超声波测距专用集成电路都是只有厘米级的测量准确度。通过分析超声波测距误差产生的原因,提高测量时间差到微秒级,以及用LM92 温度传感器进行声波传播速度的补偿后,设计的高准确度超声波测距仪能达到毫米级的测量准确度。


  3 软件方案

  系统软件设计采用模块化设计,主要包括主程序设计、T0 中断服务子程序、外部中断服务子程序、距离计算子程序、LED 显示子程序设计等。

  主程序首先是对系统环境初始化,设置定时器T0工作模式为16 位定时计数器模式。置位总中断允许位EA 并给显示端口P0 和P2 清0. 



  图7 电路原理

  然后调用超声波发生子程序送出一个超声波脉冲,为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约0.1 ms,然后才打开外中断0 接收返回的超声波信号。

  测出距离后结果将以十进制BCD 码方式送往LED 显示约0.5 s,然后再发超声波脉冲重复测量过程。为了有利于程序结构化和容易计算出距离,主程序采用C 语言编写。

  3.1 主程序

  · 系统控制初始化LED、初始化计数控制部分,清除计数值。

  · 单片机超声波脉冲信号。

  · 立刻置INT0 为1,打开计时器,等待回波信号。

  · 回波信号到达,关闭计时器,P3.3 为0,清INT0 为0.

  · 单片机读出计数值。

  · 单片机将计数值进行计算后得出的距离值,显示在LED 上。

  · 当测量距离< 10.0 cm 或> 50.0 cm 时,报警系统灯亮。

  · 当按下复位键时,启动复位功能。

  主程序流程图如图8 所示。 



  图8 主程序流程

  3.2 定时中断服务子程序

  超声波发生子程序的作用是通过P3.3 端口发送2 个左右频率约40 kHz 的方波的超声波脉冲信号,同时把计数器T0 打开进行计时。定时中断子程序如图9 所示。 



  图9 定时中断服务子程序

  3.3 功能显示

  如图10 所示,通过数码管显示测出距离为14.3 cm,属于10.0 ~ 50.0 cm 正常范围。 



  图10 超声波测距正常范围

  如图11 所示,超声波测出的距离为9.4 cm,< 10.0 cm,报警系统启动,LED 灯亮。

 

  图11 超声波测距< 10.0 cm

  如图12 所示,超声波测出的距离为50.3 cm,> 50.0 cm,报警系统启动,LED 灯亮。 



  图12 超声波测距大于50.0 cm

  如图13 所示,按下键盘模块中的按键,复位系统,数码管显示距离数归零。

 

  图13 启动复位功能

 

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖