Arduion 中断:
attachInterrupt(interrupt, function, mode)
变量使用。
1)interrupt:中断号,UNO只能使用 0或1 ,即代表D2 与D3口。
2)function:调用中断函数,中断发生时调用的函数。
3)mode:中断触发模式。
UNO R3 支持四种中断触发模式:
LOW | 当针脚输入为低时,触发中断 |
CHANGE | 当针脚输入发生改变时,触发中断 |
RISING | 当针脚输入由低变高时,触发中断 |
FALLING | 当针脚输入由高变低时,触发中断 |
下面是一段官网参考代码:
int pin = 13; //首先我们需要找一个灯来观察
volatile int state = LOW; //设置灯状态
void setup()
{
pinMode(pin, OUTPUT);
attachInterrupt(0, blink, CHANGE); //设置触发,中断号0,即数字2口
}
void loop()
{
digitalWrite(pin, state); //对观察灯写入状态值
}
void blink() //触发函数
{
state = !state; //将状态变量求反
}
取消中断采用:
detachInterrupt(interrupt)注意:
中断是没有参数和返回值的。
引处:
http://www.cnblogs.com/Kaysin/archive/2013/02/06/2902197.html?ADUIN=804498142&ADSESSION=1384313057&ADTAG=CLIENT.QQ.5239_.0&ADPUBNO=26248