arduino中断

 

int pinInterrupt = 2; //接中断信号的脚
 
void onChange()
{
  Serial.println("Key go");
   if ( digitalRead(pinInterrupt) == LOW )
      Serial.println("Key Down");
   else
      Serial.println("Key UP");
}
 
void setup()
{
   Serial.begin(9600); //打开串口
 
   pinMode( pinInterrupt, INPUT);//设置管脚为输入
   
   //Enable中断管脚, 中断服务程序为onChange(), 监视引脚变化
   attachInterrupt( digitalPinToInterrupt(pinInterrupt), onChange, CHANGE);
  //attachInterrupt( pinInterrupt, onChange, RISING);
   /*
   LOW 当引脚为低电平时,触发中断
   CHANGE 当引脚电平发生改变时,触发中断
   RISING 当引脚由低电平变为高电平时,触发中断
   FALLING 当引脚由高电平变为低电平时,触发中断.
   */

}
 
void loop()
{
  // 模拟长时间运行的进程或复杂的任务。
  for (int i = 0; i < 100; i++)
  {
    // 什么都不做,等待10毫秒
    delay(10); 
  }
}

  

猜你喜欢

转载自www.cnblogs.com/kekeoutlook/p/12709947.html
今日推荐