• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

有没有高手有DIY超声波模块的程序?

946ac308b2666950 2019-02-21 浏览量:997
这几天玩了一下超声波模块HC_SR04,就想了解下这么模块程序是如何处理接收的数据,有没有高手自己DIY过超声波模块,写过全套的程序。能不能分享下,我的邮箱318093239@qq.com
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • Arduino驱动超声波传感器SR04代码

    const int TrigPin = 2; //触发引脚
    const int EchoPin = 3; //测量引脚
    float cm; 
    void setup() 

    Serial.begin(9600); 
    pinMode(TrigPin OUTPUT); //设置触发引脚为输出
    pinMode(EchoPin INPUT); //设置测量引脚为输入

    void loop() 

    //发一个10us的高脉冲去触发TrigPin 
    digitalWrite(TrigPin LOW); 
    delayMicroseconds(2); 
    digitalWrite(TrigPin HIGH); //拉高引脚
    delayMicroseconds(10);   //保持10us
    digitalWrite(TrigPin LOW); 
     
    cm = pulseIn(EchoPin HIGH) / 58.3; //算成厘米 
    cm = (int(cm * 100.0)) / 100.0; //保留两位小数 
    Serial.print(cm);   //输出打印结果
    Serial.print("cm"); //输出单位
    Serial.println();   //回车换行
    delay(1000); 
    }




    • 发布于 2019-02-21
    • 举报
    • 评论 0
    • 3
    • 0

其他答案 数量:11
  • 简单的超声波测距模块制作_HC-SR04超声波测距模块及制作图详解

    公式: uS/58=厘米或者uS/148=英寸;或是:距离=高电平时间*声速(340M/S) /2

    简单的超声波测距模块制作_HC-SR04超声波测距模块及制作图详解

    原理图

    • 发布于2019-02-21
    • 举报
    • 评论 1
    • 1
    • 0
946ac308b2666950 回复了 大大的木头 :发送头是发送8个40Khz的方波,我想的是怎么处理接收头返回的方波 回复

  • 这个模块好像挺简单吧,我记得是脉冲是模块上面的电路实现的,单片机只需要给一个类似于启动的信号,然后模块会产生频率驱动发射雷达,如果有返回的声波,则接受雷达会受到返回的声波,然后模块的输出引脚就会有输出电平信号,我在学校使用的时候是按照以下流程处理的,(也许不全面,记不太清楚了)

    1、给模块一个启动信号。

    2、等待模块返回信号(模块收到声波后的输出信号)。

    3、一旦收到模块信号(上升沿),则立即启动定时器计时。

    4、模块的输出信号变为低电平(下降沿),立即停止计时。

    3、根据计时时间计算实际距离。

    • 发布于2019-02-21
    • 举报
    • 评论 0
    • 1
    • 0

  • 嗯,我觉得你可以先指定你的开发平台,楼上袁兄给出了arduino的应用,基本试用于C环境的各平台,注意时钟就行。

    python类似,稍晚一点我可以尝试改写一个出来。

    但据我的经验,在实际应用中,距离范围可能是最限制你应用的,距离近了,检测不出来,距离远了,也检测不出来。只能在某个范围内使用,而且精度可能也不会太高,还会被干扰。。。

    • 发布于2019-02-21
    • 举报
    • 评论 0
    • 1
    • 0

  • 可以自己写,模块就是用stc单片机做的,原理很简单,就是发送一串脉冲,然后单片机接收后计算时间
    • 发布于2019-02-21
    • 举报
    • 评论 0
    • 1
    • 0

  • https://blog.csdn.net/qq_33430730/article/details/80968123可以看看,仿真加程序!
    • 发布于2019-02-21
    • 举报
    • 评论 0
    • 1
    • 0

  • 模块的接口其实就是测量一个脉冲的宽度来计算距离。模块原理图在网上可以很容易搜到,也可以自己用单片机定时器来实现数字输出
    • 发布于2019-02-21
    • 举报
    • 评论 0
    • 1
    • 0

  • 这里有一个程序

    https://blog.csdn.net/tcjy1000/article/details/70170058

    • 发布于2019-02-21
    • 举报
    • 评论 0
    • 0
    • 0

  • 超声波模块DIY的极少,最多人用hcsr04的,用定时器输入捕获功能即可检测。
    • 发布于2019-02-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 可以参考一下这篇文章http://blog.sina.com.cn/s/blog_62efd1040100v4hn.html

    这类器件都是去操作它的寄存器进行相关配置的,不用太关注它实现的细节

    • 发布于2019-02-24
    • 举报
    • 评论 0
    • 0
    • 0

  • 其实它就是自己发射一段频率反射回来然后又接收那段频率,计算发射接收的时间
    • 发布于2019-02-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 百度arduino超声波例程就有好多了
    • 发布于2019-02-28
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

有没有高手有DIY超声波模块的程序?