今天小编要和大家分享的是控制,MCU相关信息,接下来我将从如何利用stm32单片机进行超声波测距,rcw-0002超声波测距模块_hc-sr04_ 用户手册-v1这几个方面来介绍。

控制,MCU相关技术文章如何利用stm32单片机进行超声波测距rcw-0002超声波测距模块_hc-sr04_ 用户手册-v1

控制,MCU相关技术文章如何利用stm32单片机进行超声波测距

首先来看模块图

在某宝上一搜就能找到,关于它的使用也是非常简单,先看数据手册里面需要注意的几点

如何利用stm32单片机进行超声波测距

1 基本的参数

如何利用stm32单片机进行超声波测距

在实际测试当中,最大测量三米多的距离还是可以,最小距离我没有做测试,我测的最小距离是50厘米,再往下没有继续测。

2测距的基本原理

如何利用stm32单片机进行超声波测距

这里的基本原理其实应该是它的使用方法,如果你仔细看它的数据手册会发现这种测距模块还有另外一种使用方法:USART通信。

看文字不是很直观,简单粗暴来看图

如何利用stm32单片机进行超声波测距

如何利用stm32单片机进行超声波测距

在写程序的时候没有使用USART的方法,因为上图的这种驱动方式我认为比较简单,后面的程序也是按照这个时序图来编写的。

注意:上图中关于测距的公式,在程序中我没有使用他给的公式,这一点在后面会提到。

3 实物图的连接

实物图的连接就不上图了,购买此模块的时候一般卖家会给你相应的资料。

直接上程序:

主函数:

intmain(void)

{

unsignedintcount=0;

floatdistance=0;

floatdistancebuf[]={0};//这里的数组没有意义,是在调试程序的时候,怕测的距离有误差,把连续几次测到的数值放入数组中求平均值,以提高精度