// L1-005 三灯双向流水灯(往返流水)教师完整版
// 引脚定义
const int ledRed = 13;
const int ledYellow= 12;
const int ledGreen = 11;
// 初始化:全部配置为输出
void setup() {
pinMode(ledRed, OUTPUT);
pinMode(ledYellow, OUTPUT);
pinMode(ledGreen, OUTPUT);
}
void loop() {
// ========== 【正向流水:红 → 黄 → 绿】 ==========
// 红灯亮
digitalWrite(ledRed, HIGH);
digitalWrite(ledYellow, LOW);
digitalWrite(ledGreen, LOW);
delay(500);
// 黄灯亮
digitalWrite(ledRed, LOW);
digitalWrite(ledYellow, HIGH);
digitalWrite(ledGreen, LOW);
delay(500);
// 绿灯亮
digitalWrite(ledRed, LOW);
digitalWrite(ledYellow, LOW);
digitalWrite(ledGreen, HIGH);
delay(500);
// ========== 【反向流水:绿 → 黄 → 红】 ==========
// 绿灯保持(衔接终点,不跳转断层)
// 黄灯亮
digitalWrite(ledRed, LOW);
digitalWrite(ledYellow, HIGH);
digitalWrite(ledGreen, LOW);
delay(500);
// 红灯亮
digitalWrite(ledRed, HIGH);
digitalWrite(ledYellow, LOW);
digitalWrite(ledGreen, LOW);
delay(500);
}