如何用一个按钮控制三个LED灯闪烁,每当按下一次按钮,LED灯就会交替闪烁,按钮保持开启状态时灯不会交替闪烁
时间: 2023-12-13 17:06:17 浏览: 242
流水灯高低4位交替闪烁定时器控制_流水灯4个交替_流水灯高低4位交替闪烁定时器控制_feltjnc_四位流水灯_
5星 · 资源好评率100%
您可以使用一个 Arduino 板和三个 LED 灯,以及一个按钮。
首先,您需要将三个 LED 灯连接到 Arduino 板的数字引脚,例如 D2、D3 和 D4。您还需要将按钮连接到另一个数字引脚,例如 D5。此外,您需要将所有 LED 灯的另一端连接到 Arduino 板上的 GND 引脚。
接下来,您可以使用以下代码实现您的要求:
```
int ledPins[] = {2, 3, 4};
int buttonPin = 5;
bool buttonState = false;
bool lastButtonState = false;
bool ledState[] = {false, false, false};
int ledIndex = 0;
void setup() {
for (int i = 0; i < 3; i++) {
pinMode(ledPins[i], OUTPUT);
}
pinMode(buttonPin, INPUT_PULLUP);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState == false && lastButtonState == true) {
// 按钮刚刚被按下
ledState[ledIndex] = !ledState[ledIndex];
ledIndex++;
if (ledIndex > 2) {
ledIndex = 0;
}
}
lastButtonState = buttonState;
for (int i = 0; i < 3; i++) {
digitalWrite(ledPins[i], ledState[i]);
}
}
```
这段代码会不断循环,检测按钮的状态。如果按钮从开启状态变为关闭状态,代码会交替切换三个 LED 灯的状态。如果按钮一直保持开启状态,LED 灯就不会交替闪烁。
阅读全文