0

这是我的代码(基本上都来自初学者工具包的第二个练习):

int switchState=0;
int flag=0;
void change(int &i){
 if (i==0)
  i=1;
 else
  i=0; 
}

void setup(){
pinMode(3,OUTPUT);  
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(2,INPUT);
flag=0;
}

void loop(){
 switchState=digitalRead(2);
 if (switchState==HIGH)
   change(flag);

 if (flag==0)
 {
  digitalWrite(3, HIGH); 
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
 }
 else{
  digitalWrite(3, LOW); 
  digitalWrite(4, LOW);
  digitalWrite(5, HIGH);

  delay(100);
  digitalWrite(4, HIGH);
  digitalWrite(5, LOW);
  delay(100);
 }
}

我想让按钮的“点击”从闪烁的 LED 切换到稳定的 LED,反之亦然,但我只能点击第一个按钮。

为什么“更改”功能只工作一次?

4

0 回答 0