2 つのプッシュ ボタンと 5 つの LED が配線されています。回路では、押しボタン、5 個の LED、押しボタンの順序になっています。LED の順序は、左から右へ (最初のプッシュ ボタンの後から) 赤、緑、青、緑、赤です。青色(中央)の LED を使用して左右を区別します。左の押しボタンを押すと、それぞれの緑のボタンが点灯し、ボタンを離すと赤いボタンが点灯します。右側も同様の機能です。だから私がしたいのは、両方のボタンが押されたときに、緑色のライトが消えたままになり、青色のライトが点灯することです。ただし、両方のボタンを押すと、両方の緑色のライトと青色のライトが点灯します。回路の問題のプログラミングエラー?これが私のコードです:
//Using Arduino UNO
int switchL = 0; //Left button
int switchR = 0; //Right button
void setup() { //LED from left to right
pinMode(3, OUTPUT); //Red
pinMode(4, OUTPUT); //Green
pinMode(5, OUTPUT); //Blue
pinMode(6, OUTPUT); //Green
pinMode(7, OUTPUT); //Red
Serial.begin(9600);
}
void loop() {
switchL = digitalRead(2);
switchR = digitalRead(8);
if (switchL == HIGH) {
digitalWrite(4, HIGH);
digitalWrite(3, LOW);
} else {
digitalWrite(4, LOW);
digitalWrite(3, HIGH);
}
if (switchR == HIGH) {
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
} else {
digitalWrite(6, LOW);
digitalWrite(7, HIGH);
}
if (switchL == HIGH && switchR == HIGH){
digitalWrite(5, HIGH);
if (digitalRead(5) == HIGH) {
digitalWrite(4, LOW);
digitalWrite(3, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
} else {
digitalWrite(5, LOW);
}
}
}