标题: 51单片机小车倒车障碍警报设计(源程序+视频) [打印本页]

作者: 我是你爸爸丶    时间: 2019-4-4 15:12
标题: 51单片机小车倒车障碍警报设计(源程序+视频)
      大家好,今天为大家分享一个设计叫51单片机小车倒车警报系统。顾名思义,开过车的朋友都知道,在倒车的过程中要是车尾有障碍且小于一定距离,车子就会发出警报,告诉你不要再继续倒车了。
      我第一次方案采用的是红外传感器,原理呢是红外光发出是否有反射回来从而判断有无障碍,但是做出来的效果不佳



所以本设计采用的是超声波模块HC-SR04配合蜂鸣器发出警报。HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能, 测距精度可达高到3mm;模块包括超声波发射器、接收器与控制电路。基本工作原理:(1)采用IO口 TRIG触发测距,给至少10us的高电平信号;(2)模块自动发 送8个40khz的方波,自动检测是否有信号返回;(3)有信号返回,通过 IO 口 ECHO输出一个高电平,高电平持续的时间就是超声发射到返回的时间。
      计算公式:测试距离=(高电平时间t * 340m/S)/2  简化 L=340*t/2(计算出来单位是米,如果是厘米再除以100)






(直接在车尾固定好该模块)
void main(void)
{
TMOD=0X11;
TH1=(65536-100)/256;   //100US定时
TL1=(65536-100)%256;
TH0=0;
TL0=0;  
TR1= 1;
ET1= 1;
ET0= 1;
EA = 1;

while(1) //无限循环
{
  
   

              
if(timer>=1000)   //80MS检测启动检测一次  800
    {
        timer=0;
      StartModule(); //启动检测
           Conut();    //计算距离
         
        if(S<20)    //后边检测到红外信号
      {
         stoprun();   //调用小车停止函数
         fmq();      //调用蜂鸣器警报函数
        delay(40);
         
     
     }

        
      else
     {
              if(S>20)
       {

                backrun();   //调用小车后退函数
        FM=1;
         delay(40);
}


}
      
   
  }

}



附上main函数,这个小设计大概花半小时就能完成了,是不是很有意思呢
附件有完整代码和演示视频。


全部资料51hei下载地址:
倒车警报.zip (6.61 MB, 下载次数: 27)






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1