【摘要】:外部中断是由外部设备发起请求的中断。要想使用外部中断,需要了解中断申请的来源,根据外部设备选择中断的模式,以及中断触发后需要执行的中断服务函数。1)attachInterrupt()函数attachInterrupt()函数用于指定外部中断发生时调用的中断服务函数,函数用法如下:参数interrupt为中断编号,在MSP430G2 LaunchPad中引脚编号就是中断编号;function为中断服务函数,当中断被触发后会立即运行此函数;mode为中断模式。4)interrupts()函数interrupts()函数用于禁止中断之后启动中断。
外部中断是由外部设备发起请求的中断。要想使用外部中断,需要了解中断申请的来源(引脚的位置),根据外部设备选择中断的模式,以及中断触发后需要执行的中断服务函数。
1)attachInterrupt()函数
attachInterrupt()函数用于指定外部中断发生时调用的中断服务函数,函数用法如下:
参数interrupt为中断编号,在MSP430G2 LaunchPad中引脚编号就是中断编号;function为中断服务函数,当中断被触发后会立即运行此函数;mode为中断模式。大部分LaunchPad支持的中断模式如表4-13所示。
表4-13 中断模式
2)中断服务函数
中断服务函数是中断被触发后要去执行的函数,该函数不能带任何参数,且返回值类型为空,例如:
需要注意:在中断服务函数代码中需修改的全局变量要定义成volatile。
3)detachInterrupt()函数(www.xing528.com)
detachInterrupt()函数表示取消中断,函数用法如下:
参数interrupt表示取消中断的编号,在MSP430G2 LaunchPad中引脚编号就是中断编号。
4)interrupts()函数
interrupts()函数用于禁止中断之后启动中断。默认情况下,启动中断以允许重要任务在后台进行。函数用法如下:
5)nointerrupts()函数
nointerrupts()函数的作用是禁用中断。函数用法如下:
一些重要时间的敏感代码,在进行过程中不希望被中断所影响,可以提前使用nointerrupts()禁止中断,等敏感代码整体执行完后,再调用interrupts()开启中断。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。