- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
基于STM32的HC-SR04超声波测距模块实验
硬件环境
STM32F407探索板(其他开发板皆可以)
HC-SR04超声波模块
软件环境
KEIL5
CUBEMX
串口调试助手(sscom或其他)
实验目标
•了解HC-SR04超声波模块工作原理
•实现超声波模块测距
1、超声波模块介绍
1.1超声波测距原理及系统组成
超声波测距是借助于超声脉冲回波渡越时间法来实现的。设超声
波脉冲由传感器发出到接收所经历的时间为t,超声波在空气中的传播
速度为c,则从传感器到目标物体的距离D可用下式求出:D=ct/2,图
2是相应的系统框图。
基本原理:经发射器发射出长约6mm,频率为40KHZ的超声波
信号。此信号被物体反射回来由接收头接收,接收头实质上是一种压
电效应的换能器。它接收到信号后产生mV级的微弱电压信号。
1.2HC-SR04模块原理
HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感
测功能,测距精度可达高到3mm,模块包括超声波发射器、接收器
与控制电路。基本工作原理:(1)采用IO口TRIG触发测距,给最少
10us的高电平信呈。(2)模块自动发送8个40khz的方波,自动检测
是否有信号返回;(3)有信号返回,通过IO口ECHO输出一个高电平,
高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电
平时间*声速(340M/S))/2,下面是实物图。
如上图接线,VCC供5V电源,GND为地线,TRIG触发控制信
号输入,ECHO回响信号输出等四个接口端。
1.3超声波时序图
以上时序图表明你只需要提供一个10uS以上脉冲触发信号,该模
块内部将发出8个40kHz周期电平并检测回波。一旦检测到有回波信
号则输出回响信号。回响信号的脉冲宽度与所测的距离成正比。由此
通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式:
uS/58=厘米或者uS/148=英寸;或是:距离=高电平时间*声速
(340M/S)/2;建议测量周期为60ms以上,以防止发射信号对回响
信号的影响。注:1、此模块不宜带电连接,若要带电连接,则先让模
块的GND端先连接,否则会影响模块的正常工作。2、测距时,被测
物体的面积不少于0.5平方米且平面尽量要求平整,否则影响测量的
结果。
1.4电气参数
电气参数HC-SR04模块
工作电压DC5V
工作电流15mA
工作频率40KHZ
最远射程4M
最近射程2CM
测量角度15度
输入触发信号10uS的TTL脉冲
输出回响信号输出TTL电平信号,与射程成比例
规格尺寸45*20*15mm
2、软件实现
对程设计最重要的就是模块的时序图了,一切皆时序,看明白了
时序,那么驱动自然也就不难写了,分析上面时序,首先模块需要触
发信号,触发信号是不低于10us的TTL电平,也是就需要控制IO输
出不低于10us的高电平脉冲,模块接收到此脉冲信号后,内部会输出
8个40KHZ脉冲,然后模块会输出与检测距离相应时间的高电平作为
回响信号,作为我们检测的依据。
2.1硬件连接
单片机HC-SR04模块
5VVCC
TrigPB14
EchoPB15
GNDGND
2.2cubemx配置
结合上面我们的分析,需要用到us延时,定时器计算超声波返回
高电平时间,us延时在上一篇文章做了很详细的介绍,小伙伴们可以
动动可爱的小手哈,上篇文章链接在这:Embeded。
时钟配置上篇文章也有介绍到,这里也贴出来,也可以使用
文档评论(0)