超声波测距模块的使用

超声波测距模块:

超声波测距模块有好多种类型,目前比较常用的有URM37超声波传感器默认是232接口,可以调为TTL接口,URM05大功率超声波传感器测试距离能到10米,算是目前来说测试距离比较远的一款了,另外还有比较常用的国外的几款SRF系列的超声波模块,目前的超声波模块精度能到1cm

工作原理:

超声波测距模块是用来测量距离的一种产品,通过发送和就接收超声波,利用时间差和声音传播速度,计算出模块到前方障碍物的距离。

具体使用及代码

1、定义引脚

#include<reg52.h>
#include<stdio.h>
sbit Trig = P1^0;
sbit Echo = P1^1;

2、设定串口波特率

void init_115200()
{SCON = 0x50;T2CON |= 0X30;TH1 = 0xFF;TL1 = 0xFD;RCAP2H = 0XFF;RCAP2L = 0XFD;TR2 = 1;ES = 1;EA = 1;ET0=1;
}

3、设定发送时间

void Delay10us()
{TMOD |= 0x1;TH0 = 0xFF;TL0 = 0xF6;TR0 = 1;while(!TF0);TF0 = 0;
}void CSB_Rstart()  //启动超声波模块,初始化
{Trig=0;Trig=1;Delay10us();Trig=0;
}

4、获取时间和距离

int gettime()//获取时间
{unsigned int time = 0;time = TH0<<8 | TL0;  //TH0*256+TL0return time;
}float CSB_Getdis(unsigned int time)  //获取距离
{float distance;distance = (float)time * 0.0017;TH0=0;TL0=0;//清空计时器·return distance;
}void star()
{TH0 = 0;TL0 = 0;TR0 = 1;
}void end()
{TR0 = 0;
}void CSB_GetOnce()  //获取一次超声波测距模块的距离
{CSB_Rstart();while(!Echo);//当Echo为零时等待star();while(Echo);//当Echo为1计数并等待end();
}

5、将所测距离打印出来

int main()
{unsigned int time = 0;float dis;char buf[24]={'\0'};init_115200();while(1){  CSB_GetOnce();time = gettime();dis = CSB_Getdis(time);sprintf(buf,"dis=%fcm\r\n",dis);delay();upt(buf);}return 0;
}

打印函数

void shuchu(char c){SBUF = c;while(TI==0);TI = 0;
}void upt(char *p){while(*p != '\0'){shuchu(*p);p++;}}

延时函数

void delay()
{int i;int j;for(i=0;i<100;i++)for(j = 0;j<2000;j++);
}

超声波测距模块的使用相关推荐

  1. 通过串口打印--超声波测距模块测得距离

    通过串口打印--超声波测距模块测得距离 原理 超声波测距模块 串口传输 实战代码 原理 超声波测距模块 在这里首先需要了解超声波测距模块的原理.在我的这篇博客有很多介绍.超声波模块介绍 串口传输 串口 ...

  2. 51单片机 普中V2 超声波测距 报警 显示 基于MCS51单片机的超声波测距模块的开发

    基于MCS51单片机的超声波测距模块的开发 采用C51程序设计语言,完成下列功能要求. l 必选功能: (1) 超声波模块和单片机的接口设计,画出完整的电路原理图.(15分) (2) 开发板上电时,显 ...

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

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

  4. 学习HC-SR04超声波测距模块,代码附带卡尔曼滤波

    硬件引脚 VCC-供5V的电压(一定要是5v) GND-接地 Trig-HC-SR04超声波测距模块上的触发引脚,用于向模块发送一个10微秒的高电平触发信号,触发模块开始进行距离测量 Echo-用于接 ...

  5. 超声波测距模块HC-SR04详解(基于51单片机)

    本篇文章是个人整理的包含超声波测距模块HC-SR04的基本介绍与基本工作原理以及分别通过LCD1602.数码管和串口显示距离的实例讲解与代码的笔记,部分内容来自<HC-SR04超声波测距模块说明 ...

  6. US-016超声波测距模块

    1.  概述 US-016超声波测距模块可实现2cm~3m的非接触测距功能,供电电压为5V,工作电流为3.8mA,支持模拟电压输出,工作稳定可靠.本模块根据不同应用场景可设置成不同的量程(大测量距离分 ...

  7. 利用51单片机+HC-SR04+51单片机制造超声波测距模块

    利用HC-SR04和51单片机制造超声波测距模块 完整的项目链接: https://github.com/linxinloningg/51_chip_core.git 硬件电路分析: 1.HC-SR0 ...

  8. 使用超声波测距模块控制LED灯

    本文章为你介绍如何使用Arduino开发板和超声波测距模块来控制LED灯的明灭. 所需硬件 -Arduino开发板 -LED -超声波测距模块 下面主要为大家说明一下超声波模块. 超声波传感器通过采用 ...

  9. Micropython——HC-SR04超声波测距模块

    文章目录 HC-SR04超声波测距模块 超声波测距原理 接线 代码 HC-SR04超声波测距模块 超声波测距模块HC-SR04是市面上常见的超声波测距模块,价格便宜,精度高,可提供2cm-400cm的 ...

  10. 超声波测距模块(HC-SR04模块)特点及使用介绍

    超声波测距模块(HC-SR04模块)特点及使用介绍 前言 一.超声波测距模块(HC-SR04模块)外观 二.原理图 三.相关参数讲解 1.参数 2.测量范围 3.计算公式 4.优点 5.产品特性(根据 ...

最新文章

  1. 微服务并不能解决你的烂代码问题
  2. C#开发学习——内联表达式
  3. PPT 下载 | 数据治理中的一些挑战与应用
  4. 分布式网站架构后续:zookeeper技术浅析
  5. ADAS视觉方案盘点下篇:11家创业公司完全解读
  6. 三心二意,助你好运?
  7. matlab绘制球面模型_MATLAB采用surf/surfc/surfl/surfnorm绘制球体
  8. 3D游戏建模就是那么简单
  9. 什么是OOM?常见有哪些OOM?
  10. mac搭建svn服务器文件被锁定,MAC搭建SVN服务器并配置Cornerstone
  11. [转]Java8 Lambda表达式教程
  12. yield用法详解——最简单,最清晰的解释
  13. Anniversary party 员工的活跃度问题 (树形dp)
  14. 陀螺仪指向的是什么方向
  15. 基于Matlab使用激光雷达从点云到跟踪列表跟踪车辆仿真(附源码)
  16. 使用HTML制作静态网站(圣诞节案例)
  17. android 弹窗banner,弹窗交互规范分析|UI|观点|DesigneR_D - 原创文章 - 站酷 (ZCOOL)
  18. linux centos 环境下Device eth0 does not seem to be present,delaying initialization. 问题处理
  19. HbuilderX 快捷键修改
  20. 由于找不到libgcc_s_dw2-1.dll,无法继续执行代码。重新安装程序可能会解决此问题

热门文章

  1. 详解 itoa 函数并模拟实现
  2. 来自csdn第一博主:成功的背后(给所有IT人)
  3. 10大玄机为你揭开炒土豆丝爽脆的秘密——尖椒土豆丝
  4. 南昌理工学院计算机应用怎么样,南昌理工学院计算机系哪个专业最好
  5. 斐讯w3固件下载_《极速定位,自由奔跑----斐讯W3运动手环测评》by 唐国栋 - 爱燃烧...
  6. C语言实现的一个交互小程序(一)
  7. 获取字符长度并控制字数和行数(超出显示..., 悬浮显示所有内容)
  8. Linux Shell 脚本编程 入门
  9. 您的推特营销选对群控了吗
  10. 2188万:2022年度5G+多网融合应急调度平台项目