arduino超声波测距蜂鸣器警报
时间: 2024-01-10 16:02:48 浏览: 301
以下是使用Arduino实现超声波测距并触发蜂鸣器警报的代码示例:
```arduino
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define TRIGGER_PIN 2
#define ECHO_PIN 3
#define BUZZER_PIN 4
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
pinMode(TRIGGER_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(BUZZER_PIN, OUTPUT);
lcd.begin(16, 2);
lcd.print("Distance: ");
}
void loop() {
long duration, distance_cm;
digitalWrite(TRIGGER_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIGGER_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIGGER_PIN, LOW);
duration = pulseIn(ECHO_PIN, HIGH);
distance_cm = duration * 0.034 / 2;
lcd.setCursor(10, 0);
lcd.print(distance_cm);
lcd.print(" cm ");
if (distance_cm > 32) {
digitalWrite(BUZZER_PIN, HIGH);
} else {
digitalWrite(BUZZER_PIN, LOW);
}
delay(500);
}
```
这段代码使用了Arduino的`LiquidCrystal_I2C`库来控制LCD1602显示屏,并使用`HC-SR04`超声波测距模块和无源蜂鸣器。在`setup()`函数中,我们初始化了引脚的模式,并在LCD上显示"Distance: "。在`loop()`函数中,我们通过超声波模块测量距离,并将结果显示在LCD上。如果距离大于32cm,蜂鸣器将响起;否则,蜂鸣器将停止响起。
请注意,为了使代码正常工作,您需要安装`LiquidCrystal_I2C`库和`YFROBOT`库。
阅读全文