一、产品介绍
超声波测距模块可提供2cm-400cm的非接触距离感测功能,测距精度3mm,模块包括超声波发射器,接收器与控制电路。

二、基本工作原理
(1)采用IO口trig出发测距,给Echo最少10us的高电平信号。
(2)模块自动发送40khz的方波,自动检测是否有信号返回
(3)有信号返回,通过IO口ECHO(如上图)输出一个高电平,高电平持续时间就是超声波从发射到返回的时间。
公式:距离=(高电平时间*340m/s)/ 2
三、时序图
如何看时序图?
从上到下,从左到右

四、示例代码

超声波模块初始化

void sr04_init(void)
{//使能端口B、端口E的硬件时钟RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE );RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE, ENABLE );//PB6为输出模式,因为该引脚连接到TrigGPIO_InitStructure.GPIO_Pin  = GPIO_Pin_6;//指定第6根引脚 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT ;//配置为输出模式GPIO_InitStructure.GPIO_Speed =GPIO_Speed_50MHz ;//配置引脚的响应时间=1/100MHz .//从高电平切换到低电平1/100MHz,速度越快,功耗会越高GPIO_InitStructure.GPIO_OType = GPIO_OType_PP ;//推挽的输出模式,增加输出电流和灌电流的能力GPIO_InitStructure.GPIO_PuPd  = GPIO_PuPd_NOPULL ;//不使能内部上下拉电阻GPIO_Init(GPIOB ,&GPIO_InitStructure);  //PE6为输入模式,因为要检测ECHO输出高电平的持续时间GPIO_InitStructure.GPIO_Pin  = GPIO_Pin_6;//指定第6根引脚 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN ;//配置为输出模式GPIO_InitStructure.GPIO_Speed =GPIO_Speed_50MHz ;//配置引脚的响应时间=1/100MHz .//从高电平切换到低电平1/100MHz,速度越快,功耗会越高//GPIO_InitStructure.GPIO_OType = GPIO_OType_PP ;//推挽的输出模式,增加输出电流和灌电流的能力GPIO_InitStructure.GPIO_PuPd  = GPIO_PuPd_NOPULL ;//不使能内部上下拉电阻GPIO_Init(GPIOE ,&GPIO_InitStructure);   //PB6引脚初始状态为低电平,根据时序图可以了解到PBout(6)=0;}

测距

uint32_t sr04_get_distance(void)
{uint32_t t=0;//PB6输出高电平PBout(6)=1;//延时10usdelay_us(10);//PB6输出低电平PBout(6)=0;    //PE6要等待高电平出现while(PEin(6)==0);//测量高电平的持续时间while(PEin(6)){t++;delay_us(9);//超声波每传输9us时间,距离为3mm}//因为该时间是包含发射和返回的时间,需要除以2t/=2;return 3*t;
}

【STM32】详解超声波测距模块工作原理相关推荐

  1. hc sr04流程图_超声波测距模块工作原理_HC-SR04模块详解

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

  2. 详解超声波测距模块HC-SR04的使用

    1.模块简介 HC-SR04超声波模块常用于机器人避障.物体测距.液位检测.公共安防.停车场检测等场所.HC-SR04超声波模块主要是由两个通用的压电陶瓷超声传感器,并加外围信号处理电路构成的.如图: ...

  3. 详解JSP 中Spring工作原理及其作用

    详解JSP 中Spring工作原理及其作用 1.springmvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进行真正的处理工作. 2.Dispat ...

  4. 详解变频器、逆变器工作原理

    我现在知道直流怎么变为交流,通过PWM波,我感觉无人机的电调就是个逆变器,就是把直流变为交流,莫非就是飞控输出PWM,电调就是专为交流电?不讲道理是PWM遇到电机线圈就自动变为交流电了么. 摘自:ht ...

  5. STM32—驱动HC-SR04超声波测距模块

    文章目录 超声波测距原理 HC-SR04工作原理 STM32实现驱动 1.引脚的配置 2.时序控制 3.时间差测量 4.如何将距离测出来 超声波测距原理 利用HC-SR04超声波测距模块可以实现比较精 ...

  6. STM32智能小车------超声波测距模块

    文章目录 一.原理讲解 1.实物图 2.工作原理: 3.接线: 二.软件驱动代码 1.接口定义 2.驱动函数 总结 最终效果 大家好哇!我是小光,嵌入式爱好者,一个想要成为系统架构师的普通大学生. 进 ...

  7. 我的stm32学习——HC-SR04超声波测距模块

    一.前言 从大一开始一直有着写点东西的想法,如今即将迈入大三,却迟迟没有动笔.没有太多的借口,就是懒,"间歇性的踌躇满志,持续性的混吃等死"说的就是我本人啦.前不久刷微信看到同学在 ...

  8. 红外测距模块工作原理_共享单车里的通讯模块,工作原理是啥呢?

    现在我们所看到了共享单车除了小黄车(OFO)没有配备GPS智能锁外,其他品牌的共享单车都有安装,那么这么高科技的东西具体是怎么工作的呢?下面由我给大家讲解下其中的奥秘. 其实这个东西也谈不上太多高科技 ...

  9. 【STM32】 STM32驱动URM04超声波测距模块

    URM04简介: URM04采用了RS485串行通信总线的架构,支持多传感器的并行工作,有着两个RS-485接口,最多支持32个超声波的并联, 内置温度传感器辅助校正距离值,同时支持温度的测量 应用场 ...

最新文章

  1. springboot整合liquibase入门实例
  2. 全文搜索引擎选 ElasticSearch 还是 Solr?
  3. Docker安装zookeeper 单节点安装
  4. simulink中from与goto模块的使用
  5. java new thread参数_java线程池01-ThreadPoolExecutor构造方法参数的使用规则
  6. dfs递归实现组合型枚举
  7. 计算机网络项目——最小网元设计(阶段二)
  8. Java基础学习总结(48)——Java 文档注释
  9. windows下载安装cmake
  10. Android开发资料超级给力小游戏(精典美女搓搓 妄撮版)源码
  11. 数学建模之层次分析法(含MATLAB代码)
  12. GitLab Admin Area
  13. 怎么优雅的介绍自己的项目?
  14. Linux RAID磁盘阵列配置
  15. 调整SumatraPDF暗黑模式
  16. ssm毕设项目康健医药公司进销存管理22jao(java+VUE+Mybatis+Maven+Mysql+sprnig)
  17. 《O N E 影视厅》管理系统——WAMP架构win10+apache+mysql+php
  18. anaconda conda 换源
  19. UWB室内定位系统铸造智能化企业安全管理系统
  20. QT 制作 Excel 表格常用操作方法

热门文章

  1. activeMQ的原理及使用
  2. 计算机专业博士推荐信模板,计算机推荐信模板
  3. Intel Corporation SSD 750 Series 性能测试
  4. 彻底卸载Windows 10自带的杀毒软件windows defender
  5. 如何演示你的App?Android录制Gif动态图教程
  6. ld: i386 架构于输入文件 bar.o 与 i386:x86-64 输出不兼容
  7. 中文开源汉语分词工具
  8. 海尔计算机类,分享海尔计算机类笔试题 -管理资料
  9. 物理大地测量学笔记(一)
  10. cad计算机系统安装教程视频,CAD怎么在64位电脑上安装教程视频