stm32 智能避障小车(二)之hc-sr04

这一篇紧接着介绍hc-sr04超声波模块,思路是实物讲解、模块原理、代码讲解

1、实物讲解 首先还是看看模块的样子,由于超声波不太老实,所以我已经用橡皮筋把它封印住了,咯咯咯个。 紧接着是外部接线,超声波模块给我们留了4个排针,分别是vcc5.0v,Trig发送端,Echo接收端和Gnd 2、模块原理 实际上超声波测距的原理就是利用声音在空气中传播并且遇到障碍物会反射的效果,再根据声音在空气中的传播速度,计算出前方的距离。 那么我们具体要怎么实现呢? 1、首先我们需要给脉冲输入引脚Trig一个长为20us的高电平,hc-sr04接收到方波之后会自动发送8个40khz的声波同时回响信号输入端Echo会立即由低电平变为高电平,直到接收到反射的声波之后,才会由高电平再次变为低电平。 2、由此我们只要知道回响信号输入端为高电平所持续的时间,就能知道声波所走的时间。 3、再由声音在空气中的传播速度为344m/s,计算出前方的距离。 注意:hc-sr04所测距离的范围为2-400cm 3、代码讲解 原理我们不难理解,重点是要用定时器来测量出Echo所持续的时间。 这里还要说一下声波速度的换算:344m/st= 距离(cm)转化为34400cm/st = 距离(cm) 其中所测得的时间的单位time为us,所以 t = time/1000000s,又因为声音所走的时间是一个来回的时间,所以t = time/2000000s综上:距离 = 34400/(time/2000000)=time*0.0172=time/58 最后附上代码链接: 打完收工。。。。。

经验分享 程序员 微信小程序 职场和发展