1.按键控灯
按下亮,松开灭
赋值13号管脚13号管脚的状态,按键不按为1按下为0,相当于高低
中断控制开关
注释
中断程序中只设置了开灯,并没有关灯程序
void attachInterrupt_fun_RISING_2() {
digitalWrite(13,HIGH);
}
void setup(){
pinMode(2, INPUT_PULLUP);
pinMode(13, OUTPUT);
attachInterrupt(digitalPinToInterrupt(2),attachInterrupt_fun_RISING_2,RISING);
}
void loop(){
}
按一次亮,在按一次灭
volatile boolean 状态;
void attachInterrupt_fun_RISING_2() {
digitalWrite(13,状态);
}
void setup(){
状态 = false;
pinMode(2, INPUT_PULLUP);
pinMode(13, OUTPUT);
状态 = !状态;
attachInterrupt(digitalPinToInterrupt(2),attachInterrupt_fun_RISING_2,RISING);
}
void loop(){
}
上一个状态赋值,取反,
布尔型,只有两种状态的变量
可实现功能,工作效率低,功耗大,
void attachInterrupt_fun_RISING_2() {
digitalWrite(13,(!digitalRead(13)));
}
void setup(){
pinMode(2, INPUT_PULLUP);
pinMode(13, OUTPUT);
attachInterrupt(digitalPinToInterrupt(2),attachInterrupt_fun_RISING_2,RISING);
}
void loop(){
}