代码A(有BUG)
#define LED 13
#define BUTTON 7
int val=0;
int state=0;
void setup() {
pinMode(LED,OUTPUT);
pinMode(BUTTON,INPUT);
}
void loop() {
val=digitalRead(BUTTON);
if(val==HIGH){
state=1-state;
}
if(state==1){
digitalWrite(LED,HIGH);
} else{}
digitalWrite(LED,LOW);
}
代码B(也许不完美)
#define LED 13
#define BUTTON 7
int val=0;
int old_val=0;
int state=0;
void setup() {
pinMode(LED,OUTPUT);
pinMode(BUTTON,INPUT);
}
void loop() {
val=digitalRead(BUTTON);
if((val==HIGH) && (old_val==LOW)){
state=1-state;
delay(10);
}
old_val=val;
if(state==1){
digitalWrite(LED,HIGH);
} else{
digitalWrite(LED,LOW);
}
}