arduino超声波测距LCD蜂鸣器连线图片和代码
时间: 2024-04-09 11:13:48 浏览: 186
以下是一个基于Arduino的超声波测距LCD蜂鸣器的连线和代码示例:
连线:
- 超声波传感器的VCC引脚连接到Arduino的5V引脚;
- 超声波传感器的GND引脚连接到Arduino的GND引脚;
- 超声波传感器的Trig引脚连接到Arduino的数字引脚9;
- 超声波传感器的Echo引脚连接到Arduino的数字引脚10;
- LCD的VSS引脚连接到Arduino的GND引脚;
- LCD的VDD引脚连接到Arduino的5V引脚;
- LCD的VO引脚连接到一个10K电位器的中间引脚;
- LCD的RS引脚连接到Arduino的数字引脚2;
- LCD的RW引脚连接到Arduino的GND引脚;
- LCD的E引脚连接到Arduino的数字引脚3;
- LCD的D4-D7引脚分别连接到Arduino的数字引脚4-7;
- 蜂鸣器的正极连接到Arduino的数字引脚8;
- 蜂鸣器的负极连接到Arduino的GND引脚。
代码:
#include <LiquidCrystal.h> //加载LCD库
LiquidCrystal lcd(2, 3, 4, 5, 6, 7); //定义LCD引脚
int trigPin = 9; //定义Trig引脚
int echoPin = 10; //定义Echo引脚
int buzzerPin = 8; //定义蜂鸣器引脚
void setup() {
pinMode(trigPin, OUTPUT); //设置Trig引脚为输出模式
pinMode(echoPin, INPUT); //设置Echo引脚为输入模式
pinMode(buzzerPin, OUTPUT); //设置蜂鸣器引脚为输出模式
lcd.begin(16, 2); //初始化LCD
lcd.print("Distance: "); //显示"Distance: "文本
}
void loop() {
long duration, distance; //定义变量duration和distance
digitalWrite(trigPin, LOW); //将Trig引脚设置为低电平
delayMicroseconds(2); //延迟2微秒
digitalWrite(trigPin, HIGH); //将Trig引脚设置为高电平
delayMicroseconds(10); //延迟10微秒
digitalWrite(trigPin, LOW); //将Trig引脚设置为低电平
duration = pulseIn(echoPin, HIGH); //读取Echo引脚的脉冲信号
distance = duration / 58.2; //计算距离,单位为厘米
lcd.setCursor(0, 1); //将光标移动到第二行
lcd.print(distance); //显示距离值
lcd.print(" cm"); //显示"cm"单位
if (distance < 20) { //如果距离小于20厘米
digitalWrite(buzzerPin, HIGH); //开启蜂鸣器
} else { //否则
digitalWrite(buzzerPin, LOW); //关闭蜂鸣器
}
delay(500); //延迟500毫秒
}
注意:以上代码仅供参考,具体连线和代码根据实际情况进行调整。
阅读全文