Arduino 智能车 LED 模拟转向灯实现:左转/右转亮灯并发出警报
假设智能车连接的 LED 灯为两个,分别为左侧灯和右侧灯。可以通过以下程序实现左转时左侧灯亮并发出警报,右转时右侧灯亮并发出警报:
- 定义左侧灯和右侧灯的引脚号
int leftLedPin = 2;
int rightLedPin = 3;
- 设置引脚为输出模式
pinMode(leftLedPin, OUTPUT);
pinMode(rightLedPin, OUTPUT);
- 定义警报声音的频率和持续时间
int alertFrequency = 1000; // 警报声音的频率
int alertDuration = 100; // 警报声音的持续时间
- 实现左转时左侧灯亮并发出警报的功能
digitalWrite(leftLedPin, HIGH); // 左侧灯亮
tone(4, alertFrequency, alertDuration); // 发出警报声音
delay(1000); // 等待1秒钟
digitalWrite(leftLedPin, LOW); // 左侧灯灭
noTone(4); // 停止发出声音
- 实现右转时右侧灯亮并发出警报的功能
digitalWrite(rightLedPin, HIGH); // 右侧灯亮
tone(4, alertFrequency, alertDuration); // 发出警报声音
delay(1000); // 等待1秒钟
digitalWrite(rightLedPin, LOW); // 右侧灯灭
noTone(4); // 停止发出声音
完整代码如下:
int leftLedPin = 2; // 左侧灯引脚号
int rightLedPin = 3; // 右侧灯引脚号
int alertFrequency = 1000; // 警报声音的频率
int alertDuration = 100; // 警报声音的持续时间
void setup() {
pinMode(leftLedPin, OUTPUT); // 设置左侧灯为输出模式
pinMode(rightLedPin, OUTPUT); // 设置右侧灯为输出模式
}
void loop() {
// 左转时左侧灯亮并发出警报
digitalWrite(leftLedPin, HIGH); // 左侧灯亮
tone(4, alertFrequency, alertDuration); // 发出警报声音
delay(1000); // 等待1秒钟
digitalWrite(leftLedPin, LOW); // 左侧灯灭
noTone(4); // 停止发出声音
// 右转时右侧灯亮并发出警报
digitalWrite(rightLedPin, HIGH); // 右侧灯亮
tone(4, alertFrequency, alertDuration); // 发出警报声音
delay(1000); // 等待1秒钟
digitalWrite(rightLedPin, LOW); // 右侧灯灭
noTone(4); // 停止发出声音
}
原文地址: https://www.cveoy.top/t/topic/oyAE 著作权归作者所有。请勿转载和采集!