Arduino - M-Duino 21中断引脚是一种特殊类型的引脚,可以通过它来检测和响应外部事件或信号。它可以被用来触发一个函数,在执行程序的过程中中断当前操作。下面是一个示例代码,显示如何配置和使用M-Duino 21的中断引脚:
const int interruptPin = 21; //定义中断引脚
volatile int count = 0; //计数器变量,必须使用volatile修饰符
void setup() {
pinMode(interruptPin, INPUT_PULLUP); //将中断引脚设置为输入模式,启用上拉电阻
attachInterrupt(digitalPinToInterrupt(interruptPin), isrFunction, FALLING); //将中断引脚连接到中断函数
Serial.begin(9600); //初始化串口
}
void loop() {
//执行主程序
}
void isrFunction() {
count++; //计数器加1
Serial.print("Interrupt occurred! Count = ");
Serial.println(count);
}
在上面的示例代码中,将中断引脚定义为int类型的变量interruptPin,将计数器定义为volatile int类型的变量count。然后,在setup()函数中通过调用attachInterrupt()函数将中断引脚和中断函数isrFunction()连接起来,使用FALLING参数表示检测引脚的下降沿触发中断。最后,在isrFunction()函数中实现对计数器变量count的加1操作,并在串口监视器上打印中断发生的次数。
注意:由于中断函数具有高优先级,必须将计数器变量定义为volatile类型的,以确保它的值在不同的上下文中保持一致。