51超声波测距简易代码

一、基本思路

1、引脚:

Trig(控制端):控制发出的超声波信号
Echo(接收端):接收反射回来的超声波信号

2、计算公式:

测试距离 = ( 高电平时间 x 声速 (340m/s) ) / 2

二、程序代码

  //大体代码#include<reg52.h> //按各自主控芯片而定#include<instrins.h> //_nop_()延时 1us 函数的头文件#define Trig  P1^0   //控制端#define Echo  P1^1 //接收端typedef unsigned int u16;typedef unsigned long u32;u16 distance;  //距离     mm为单位u32 time;      //间隔时间 10us为单位//程序并不全,需要自己补全其他方面的代码,只给个核心代码//测量距离void measure() {//初始化Trig = 0;Echo = 0;//清除各位TH0 = 0;TL0 = 0;TF0 = 0; //定时器溢出标志位// 向控制端输入一个大于10us的脉冲信号  Trig = 1; _nop_(); //需要延时10us,_nop_()延时1us//...Trig = 0;//等待接收端产生高电平并开时计时while (!Echo);    TR0 = 1; //定时器开始工作    while (Echo); //当接收到回传信号,接收端置低电平,退出循环    TR0 = 0;time = TH0 * 256 + TL0; //usdistance = (int)(0.17 * time); //(340 * 1000 (mm/s)) * (time * 10 / 1000000 (s)) / 2}

三、结语

  该篇文章并不全面,目的只在于将超声波的原理转为实实在在的代码实现。
  其实,原理固然重要,但是实现又是另一会事,要多培养实践能力。

  (本文参考了 US-100超声波 使用)

51超声波测距简易代码相关推荐

  1. 最简单的51超声波测距程序

    文章目录 前言 一.51超声波测距是什么? 二.使用步骤 1.引入库 2.读入数据 总结 前言 最简单的51超声波测距程序,注释相当详细,测量出来的值直接显示在数码管上,距离超过20cm就显示三个A, ...

  2. 基于K60/K66/LPC的HC-SR04超声波测距(附带代码)

    最近在搞超声波,把自己走过的一些坑,和经验分享一下,互相学习,让初学者少走一些弯路,K60代码网上找了一些,结果没有能用的,没办法,自己看讲解,用PIT计时测试成功,在K60和K66上测试可以使用,测 ...

  3. arduino超声波测距接线图详细_Arduino系列之超声波测距模块代码(一)

    这里我将简单介绍超声波测距模块 SR04超声波传感器: 是利用超声波特性检测距离的传感器,其带有两个超声波探头,分别用作于发射和接收超声波.范围在3-450cm. 工作原理: 超声波发射器向某一方向发 ...

  4. Arduino系列之超声波测距模块代码(一)

    这里我将简单介绍超声波测距模块 SR04超声波传感器: 是利用超声波特性检测距离的传感器,其带有两个超声波探头,分别用作于发射和接收超声波.范围在3-450cm. 工作原理: 超声波发射器向某一方向发 ...

  5. 【Arduino实验13 超声波测距】

    目录 一.实验目的 二.实验设备与环境 三.实验重点 四.实验难点 五.实验内容 5.1实验任务 5.2实验原理 5.3实验内容 5.4实验结果 5.5思考题 一.实验目的 1熟悉超声波传感器基本性能 ...

  6. STM32基础——超声波测距+OLED显示+蜂鸣器报警

    此代码的格式可以直接烧录到STMF03C8T6最小系统中,烧录在其它芯片需要自己进行代码移植,功能是使用超声波模块进行测距,距离会显示在OLED屏幕上,并且当测量到的数据小于设定的范围是,蜂鸣器报警, ...

  7. STM32的超声波测距程序

    我所使用的测距模块是HC-SR04,C-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测 距精度可达高到3mm:模块包括超声波发射器.接收器与控制电路. HC-SR04基本工作 ...

  8. 基于FPGA的超声波测距

    文章目录 一.项目框架 二.超声波测距模块 三.串口模块 1.串口发送模块 2.串口发送控制模块 四.蜂鸣器模块 五.vga显示模块 1.vga协议驱动代码 2.vga数据控制模块 六.数码管 1.数 ...

  9. [博创智联]创新创客智能硬件平台——超声波测距传感器

    [博创智联]创新创客智能硬件平台--超声波测距传感器 准备工作 测试环节 编译驱动和测试代码 加载驱动并执行代码 准备工作 烧录原版系统,供电.连接串口线,配置网络,挂载NFS共享,拷贝超声波测距传感 ...

  10. [51单片机] HC-SR04超声波测距仪 基础代码

    >_<:超声波测距仪模块: >_<:51单片机,11.0592MHz晶振,将采集数据发送到串口的基础例子: >_<:代码: 1 /***************** ...

最新文章

  1. python的redis数据库连接与使用
  2. 纪念自己的第四个App:秘密Secret
  3. java 设计模式_Java设计模式的常见应用场景
  4. c++基础学习(13)--(STL、标准库)
  5. Linux系统的服务器配置minicom接console线调试交换机的步骤
  6. 用python可以解决什么问题_学 Python 能帮你解决什么问题 ?
  7. SpringBoot+Shiro学习(七):Filter过滤器管理
  8. php编程风格规范,PHP 编码风格规范指南
  9. 语音库构建_推动数据采用,以通过语音接口构建更好的产品
  10. J2me实现的wap浏览器
  11. 利用计算机指令清理垃圾,怎么用命令来清理系统垃圾
  12. linux串口结构termios,struct termios结构体—Linux串口.doc
  13. SweepProfile for 3dMax石膏线生成插件使用教程
  14. 软考中级网络工程师-第一章计算机网络概论(自我学习)
  15. 全国计算机大赛导师自评,技能大赛自我评价
  16. 如何发送gmail邮件_如何从R和Gmail发送电子邮件
  17. space-evenly
  18. php实现发表情分页_php实现分页效果
  19. JAVA获取网页中的电影下载地址小程序
  20. MYSQL使用MHA实现主从复制高可用、Galera Cluster介绍、压力测试、my.cnf配置参考

热门文章

  1. 计算机导论大一第四章,计算机导论-第四章.ppt
  2. 遥感导论(梅安新版)知识点概括
  3. IntelliJ IDEA开发Java web项目,设置JSP代码自动补全的方法
  4. 使用pdfobject.js实现在线浏览PDF--后台上传保存文件
  5. CCNA考试题库中英文翻译版及答案13
  6. 进阶之路 | 奇妙的Activity之旅
  7. linux平台生成awr报告,Linux平台生成awr报告
  8. 最大子段和问题【思路及实现】
  9. 网页国际化处理(中英文切换)
  10. Win10家庭版共享打印机