单个按键控制流水灯依次亮灭状态
时间: 2023-05-19 10:04:35 浏览: 358
可以使用 Arduino 来实现单个按键控制流水灯依次亮灭的状态。具体实现方法可以参考以下代码:
```
int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9}; // 定义流水灯的引脚
int ledCount = 8; // 流水灯的数量
int currentLed = 0; // 当前亮灯的编号
void setup() {
pinMode(ledPins[currentLed], OUTPUT); // 将第一个灯设置为输出模式
}
void loop() {
if (digitalRead(10) == HIGH) { // 如果按键被按下
delay(50); // 等待一段时间,防止抖动
if (digitalRead(10) == HIGH) { // 再次检测按键状态
digitalWrite(ledPins[currentLed], LOW); // 关闭当前亮灯
currentLed = (currentLed + 1) % ledCount; // 计算下一个亮灯的编号
digitalWrite(ledPins[currentLed], HIGH); // 打开下一个亮灯
}
}
}
```
这段代码中,我们首先定义了流水灯的引脚和数量,以及当前亮灯的编号。在 `setup()` 函数中,我们将第一个灯设置为输出模式。在 `loop()` 函数中,我们检测按键是否被按下,如果是,则关闭当前亮灯,计算下一个亮灯的编号,并打开下一个亮灯。这样就可以实现单个按键控制流水灯依次亮灭的状态了。
阅读全文