我正在制作一个带有三个用于汽车的 LED 和两个用于行人的 LED 的交互式交通灯。这些行人有一个按钮,以便他们可以请求绿灯。标准设置始终是汽车的绿灯(10 秒)和行人的红灯(5 秒)。现在我的代码只允许行人在汽车开绿灯 10 秒后使用按钮并获得绿灯。
我的问题是如何存储按钮在 10 秒内被按下,并changeLights()
在这 10 秒后调用我的函数而无需等待。
我的代码:
void loop() {
int buttonState = digitalRead(pushButton);
if (buttonState == HIGH && millis() - changeTime >=
10000){
changeLights();
}
}