arduino 超声波代码
时间: 2024-07-16 11:00:35 浏览: 79
基于arduino的超声波测距-代码
Arduino超声波传感器(通常使用HC-SR04或同类模块)是一种常见的非接触式距离测量设备。在Arduino中,我们可以编写代码来读取和处理超声波传感器发送和接收回声的时间,从而计算出物体的距离。以下是一个基本的Arduino超声波测距代码示例:
```cpp
#include <SoftwareSerial.h> // 如果你的传感器连接的是软件串口
// 定义超声波传感器引脚
const int trigPin = 9;
const int echoPin = 10;
SoftwareSerial ultrasonic(9, 10); // 对于软件串口连接
void setup() {
Serial.begin(9600); // 初始化串口通信
ultrasonic.begin(9600); // 初始化超声波传感器串口
}
void loop() {
long duration; // 存储回波持续时间
float distance; // 存储计算出的距离
// 发送触发脉冲
digitalWrite(trigPin, LOW);
delayMicroseconds(2); // 避免干扰
digitalWrite(trigPin, HIGH);
delayMicroseconds(10); // 发射持续时间一般为10us
digitalWrite(trigPin, LOW);
// 等待回波
while (ultrasonic.available() == 0); // 直到接收到回波信号
duration = pulseIn(echoPin, HIGH); // 计算回波时间
distance = duration * 0.034 / 2; // 用公式计算距离(单位:厘米)
// 将距离打印到串口
Serial.print("Distance: ");
Serial.println(distance, 2); // 打印两位小数的距离
// 添加延时以减少测量频率(可选)
delay(50); // 这里设置为50ms,你可以根据需要调整
阅读全文