用两个按键K1和K2控制A、B、C三盏LED灯,开始时三盏灯全灭;按下K1则A 灯亮,其它两盏灭;按下K1同时按下K2则B灯亮,A,C灭;按下K2则C亮,A,B灭。连接好 电路,分别使用嵌套的if-if语句和if-else-if语句实现上述功能。
时间: 2024-05-11 13:15:47 浏览: 90
好的,您的问题已经记录下来了。以下是两种代码实现方式:
嵌套的if-if语句实现:
```
int K1 = 2;
int K2 = 3;
int A = 4;
int B = 5;
int C = 6;
void setup() {
pinMode(K1, INPUT_PULLUP);
pinMode(K2, INPUT_PULLUP);
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
}
void loop() {
if (digitalRead(K1) == LOW) {
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
while (digitalRead(K1) == LOW);
}
if (digitalRead(K2) == LOW && digitalRead(K1) == HIGH) {
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
while (digitalRead(K2) == LOW);
}
if (digitalRead(K2) == LOW && digitalRead(K1) == LOW) {
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
while (digitalRead(K2) == LOW);
}
}
```
if-else-if语句实现:
```
int K1 = 2;
int K2 = 3;
int A = 4;
int B = 5;
int C = 6;
void setup() {
pinMode(K1, INPUT_PULLUP);
pinMode(K2, INPUT_PULLUP);
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
}
void loop() {
if (digitalRead(K1) == LOW && digitalRead(K2) == LOW) {
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
}
else if (digitalRead(K1) == LOW) {
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
}
else if (digitalRead(K2) == LOW && digitalRead(K1) == HIGH) {
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
}
}
```