【发布时间】:2017-08-05 22:52:54
【问题描述】:
我刚刚开始对 arduino 进行修补,并且正在了解基础知识。我有一个按钮连接,所以当它被按下时我会得到一个串行打印。
int button = 3;
void setup() {
Serial.begin(9600);
pinMode(button, INPUT_PULLUP);
}
void loop() {
if (digitalRead(button) == LOW) {
Serial.print("pressed\n");
}
}
现在,当按下按钮时,它将打印pressed 一堆直到释放。现在我的下一步是连接一个 LED,我想将按钮用作切换开关。第一次按它会亮,再按一下它会关闭。但这会在按下按钮时运行数百次。我该如何解决这个问题?谢谢
int led = 5;
int button = 3;
void setup() {
Serial.begin(9600);
pinMode(button, INPUT_PULLUP);
pinMode(led, OUTPUT);
digitalWrite(led, LOW);
}
void loop() {
if (digitalRead(button) == LOW) {
Serial.print("pressed\n");
toggleLed(led);
}
}
int toggleLed(int led){
if (digitalRead(led) == LOW) {
Serial.print("set on");
digitalWrite(led, HIGH);
} else {
Serial.print("set off");
digitalWrite(led, LOW);
}
}
【问题讨论】:
标签: arduino arduino-uno arduino-ide