所以我一直忙於在下午與我的編程作業處理,我似乎無法解決下面找到代碼中的問題。從Arduino板LED使用按鈕的點擊並不會關閉
練習是我需要通過按下一個按鈕來切換LED。在我的代碼中,當我點擊按鈕時,LED會亮起,但是當我再次點擊按鈕時LED不會熄滅。
int pinButton = 5;
int LED = 10;
int currentState;
int previousState;
void setup() {
Serial.begin(9600);
pinMode(pinButton, INPUT);
pinMode(LED, OUTPUT);
}
void toggleLed(){
if (previousState == 1 && currentState == 0){
digitalWrite(LED, HIGH);
Serial.println(currentState);
Serial.println(previousState);
delay(100);
} else {
digitalWrite(LED, LOW);
Serial.println(currentState);
Serial.println(previousState);
delay(100);
}
}
void loop() {
int currentState = digitalRead(pinButton);
if (currentState == 0 && previousState == 1) {
Serial.println("Knop is losgelaten");
toggleLed();
}
previousState = currentState;
}
我想的是,在第一個if語句的else代碼塊是沒有意義的,因爲在這種情況下previousState
和currentState
永遠是1和0分別。
你們有什麼建議嗎?
這個Arduino是一個Arduino Uno。
不幸的是,將它放入'while'聲明不起作用。 –