0°

(二十三)msp430进阶:超声波传感器HC-SR04与MSP-EXP430G2 TI Launchpad连接

介绍

(二十三)msp430进阶:超声波传感器HC-SR04与MSP-EXP430G2 TI Launchpad连接

HC-SR04超声波传感器模块

 

超声波模块HC-SR04的工作原理是SONAR和RADAR系统。它可用于确定物体在2 cm – 400 cm范围内的距离。

该模块只有4个引脚,Vcc,Gnd,Trig和Echo。

当给Trig引脚施加10μsec或更多的脉冲时,产生8个40kHz的脉冲。此后,模块中的控制电路使Echo引脚变为高电平。回声引脚保持高电平,直到它发回传输脉冲的回波信号。

回声引脚保持高电平的时间,即Echo引脚的宽度给出了产生的超声波传播到物体和返回所需的时间。

利用这个时间和空气中的声速,我们可以使用速度和时间的距离的简单公式找到物体的距离。

 

电路连接图

(二十三)msp430进阶:超声波传感器HC-SR04与MSP-EXP430G2 TI Launchpad连接

超声波传感器模块与MSP-EXP430G2 TI Launchpad连接

 

使用超声波模块查找障碍物的距离。

在这里,我们将使用HC-SR04库。

库下载:

限制以下用户组阅读此隐藏内容

请先登录

您的用户组:

提取库并将其添加到Energia IDE的库文件夹路径中。需要重新构建文件夹以使用库,并在Energia IDE的示例中显示该文件夹

有关如何将自定义库添加到Energia IDE并使用其中的示例的信息,请参阅“基础知识”部分中的“ 将库添加到Energia IDE ”。

我们在下面的附件部分提供了修改后的库文件夹。

注意:如果您选择从上面给出的链接下载库,请构建文件夹,使hcrs04.h和hcrs04.cpp直接位于文件夹内,而不是在某个子文件夹中。此外,将hcsr04.ino重命名为您喜欢的名称,并将其放在同名的子文件夹中。

我们根据上面显示的接口图修改了hcsr04.ino。修改后的草图在下面的源代码部分中给出,也可以在下面的草图中找到。

 

提示: MSP-EXP430G2 TI Launchpad主板具有512字节的RAM,可轻松上传,尤其是在使用不同库时。有时您需要串行缓冲区足够大以包含所需的数据,并且您必须修改串行库的缓冲区大小。在做这些事情时,我们必须确保代码不会使用超过70%的RAM。这可能导致代码以不稳定的方式工作,有时运行良好并且在其他方​​面失败。 

有些时候RAM使用率可能会超过70%并且代码将完全正常工作,并且即使RAM使用率为65%,代码也无法工作。 

在这种情况下,可能需要对缓冲区大小和/或变量进行一些试验和错误。

 

程序

#include <hcrs04.h>

#define PINTRIG 6
#define PINECHO 5

hcrs04 mySensor(PINTRIG, PINECHO);
void setup()
{
  Serial.begin(9600); /* Define baud rate for serial communication */
  Serial.println("Basic HC-SR04 Ultrasonic Sensor Example");
  mySensor.begin(); /* Initialize the sensor */
}

余下程序:

限制以下用户组阅读此隐藏内容

请先登录

您的用户组:

完整程序下载

程序:

限制以下用户组阅读此隐藏内容

请先登录

您的用户组:

库下载:

限制以下用户组阅读此隐藏内容

请先登录

您的用户组:
「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论