[笔记]Arduino平台使用US-100超声波测距模块的串口模式测距实验
时间: 2023-12-10 16:42:26 浏览: 41
实验目的:使用Arduino平台和US-100超声波测距模块进行测距,并通过串口输出距离数据。
所需材料:
- Arduino开发板
- USB数据线
- US-100超声波测距模块
- 杜邦线若干
电路连接:
将US-100超声波测距模块的VCC引脚连接到Arduino的5V引脚,将GND引脚连接到Arduino的GND引脚,将Trig引脚连接到Arduino的数字引脚11,将Echo引脚连接到Arduino的数字引脚10。
程序编写:
```
#define TrigPin 11
#define EchoPin 10
void setup() {
Serial.begin(9600);
pinMode(TrigPin, OUTPUT);
pinMode(EchoPin, INPUT);
}
void loop() {
long duration, distance;
digitalWrite(TrigPin, LOW);
delayMicroseconds(2);
digitalWrite(TrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin, LOW);
duration = pulseIn(EchoPin, HIGH);
distance = duration / 58.2;
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
delay(500);
}
```
程序解析:
首先定义TrigPin为11,EchoPin为10,分别对应US-100超声波测距模块的Trig和Echo引脚。
在setup函数中,初始化串口通信,将TrigPin和EchoPin引脚分别设置为输出和输入模式。
在loop函数中,定义duration和distance变量,duration用于存储超声波回波时间,distance用于存储距离值。
将TrigPin引脚输出低电平,延时2微秒,再将TrigPin引脚输出高电平,延时10微秒,最后将TrigPin引脚输出低电平,触发超声波发送。
使用pulseIn函数获取EchoPin引脚的高电平持续时间,计算出距离值,并通过串口输出距离值。
程序最后延时500毫秒,等待下一次测距。
实验结果:
将程序上传到Arduino开发板,打开串口监视器,可以看到每隔500毫秒,串口输出当前的距离值。
参考资料:
- US-100超声波测距模块数据手册
阅读全文