• 基于51单片机的超声波测距仿真倒车雷达系统设计


    资料编号:176    下面是实物功能视频演示:

    176-基于51单片机的超声波测距仿真倒车雷达系统设计

    功能讲解:

    本设计介绍了基于单片机控制的超声测距仪的原理:由51单片机控制定时计时,以HC-SR04超声波模块发射,接收,并计算超声波自发射至接收的往返时间,从而得到实测距离。并且在数据处理中采用了温度补偿的调整,用LCD1602液晶显示模块显示距离和温度。

    整个硬件电路由超声波发射接收电路、电源电路、显示电路等模块组成。各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。相关部分附有硬件电路图、程序流程图,给出了系统构成、电路原理及程序设计。此系统具有易控制、工作可靠、测距准确度高、可读性强和流程清晰等优点。实现后的作品可用于需要测量距离参数的各种应用场合。

    下面是相关程序展示:

    void DelayMs(unsigned char t)    //大致延时1mS
    {
          while(t--)         
         {
             DelayUs2x(245);         
             DelayUs2x(245);
         }
    }
    /*------------------------------------------------
    这里使用晶振12M,精确延时请使用汇编,大致延时
     长度如下 T=tx2+5 uS  uS延时函数,含有输入参
     数 unsigned char t,无返回值 unsigned char 
     是定义无符号字符变量,其值的范围是
     0~255 
    ------------------------------------------------*/
    void DelayUs2x(unsigned char t)
    {   
         while(--t);
    }

    /*------------------------------------------------
                        18b20初始化
    ------------------------------------------------*/
    /*------------------------------------------------
                        读取一个字节
    ------------------------------------------------*/
    unsigned char ReadOneChar(void)
    {
        unsigned char i=0;
        unsigned char dat = 0;
        for (i=8;i>0;i--)
         {
              DQ = 0;             // 给脉冲信号
              dat>>=1;
              DQ = 1;             // 给脉冲信号
              if(DQ)
               dat|=0x80;
              DelayUs2x(25);
         }
         return(dat);
    }

    bit Init_DS18B20(void)
    {
        bit dat=0;
        DQ = 1;                    //DQ 复 位
         DelayUs2x(5);           // 稍做延时
         DQ = 0;                 //单片机将 DQ 拉低
         DelayUs2x(200);         //精确延时大于480us小于960us
         DelayUs2x(200);
         DQ = 1;                    //拉高总线
         DelayUs2x(50);             //15~60us 后接收60-240us的存在脉冲
         dat=DQ;                    //如果x=0则初始化成功, x=1则初始化失败
         DelayUs2x(25);             //稍作延时返回
         return dat;
    }
     

    下面是仿真图展示:

    下面是原理图展示: 

    下面是PCB展示: 

    下面是资料分享下载链接:

    https://pan.baidu.com/s/1WpNn4RnALV2NeTltV1s9SA?pwd=0kgy 

  • 相关阅读:
    C++程序的内存模型
    高通量筛选检测方法-分子篇
    Mysql架构解析,InnoDB架构概述。
    0815(031天 线程/进程02)
    Effective C++ 阅读笔记 02:构造/析构/赋值运算
    性能问题从发现到优化一般思路
    无人驾驶Autoware介绍
    【C/C++】异常
    详解Native Memory Tracking之追踪区域分析
    VoxWeekly|The Sandbox 生态周报|20230904
  • 原文地址:https://blog.csdn.net/m0_74295839/article/details/127697424