设置中断
语法
void attachInterrupt(uint8 pin, voidFuncPtr handler, ExtIntTriggerMode mode)"
参数
pin 引脚编号
handler 对应的中断函数
mode 触发中断的模式
RISING 当 LOW 到 HIGH 时触发中断
FALLING 当 HIGH 到 LOW 时触发中断
CHANGE 当 LOW 到 HIGH 或 LOW 到 HIGH 时触发中断
返回值
无
示例
volatile int state = LOW;
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
pinMode(0, INPUT);
attachInterrupt(0, blink, CHANGE);
}
void loop() {
digitalWrite(LED_BUILTIN, state);
}
void blink() {
if (state == HIGH) {
state = LOW;
} else {
state = HIGH;
}
}