开关中断

interrupts()

描述:
重新启用中断(使用noInterrupts()命令后将被禁用)。中断允许一些重要任务在后台运行,默认状态是启用的。禁用中断后一些函数可能无法工作,并传入信息可能会被忽略。中断会稍微打乱代码的时间,但是在关键部分可以禁用中断。
参数:

返回值:

例子:

void setup() {
}
 
void loop()
{
  noInterrupts();
  //重要、时间敏感的代码
  interrupts();
  //其他代码写在这里
}

noInterrupts()

描述:
禁止中断(重新使能中断interrupts())。中断允许在后台运行一些重要任务,默认使能中断。禁止中断时部分函数会无法工作,通信中接收到的信息也可能会丢失。
中断会稍影响计时代码,在某些特定的代码中也会失效。
参数:

返回值:

例子:

void setup()
 
void loop()
{
noInterrupts();
//关键的、时间敏感的代码放在这
  interrupts();
//其他代码放在这
}