首页 理论教育 外部中断函数的应用-TILaunchPad与Energia

外部中断函数的应用-TILaunchPad与Energia

时间:2023-11-17 理论教育 版权反馈
【摘要】:外部中断是由外部设备发起请求的中断。要想使用外部中断,需要了解中断申请的来源,根据外部设备选择中断的模式,以及中断触发后需要执行的中断服务函数。1)attachInterrupt()函数attachInterrupt()函数用于指定外部中断发生时调用的中断服务函数,函数用法如下:参数interrupt为中断编号,在MSP430G2 LaunchPad中引脚编号就是中断编号;function为中断服务函数,当中断被触发后会立即运行此函数;mode为中断模式。4)interrupts()函数interrupts()函数用于禁止中断之后启动中断。

外部中断函数的应用-TILaunchPad与Energia

外部中断是由外部设备发起请求的中断。要想使用外部中断,需要了解中断申请的来源(引脚的位置),根据外部设备选择中断的模式,以及中断触发后需要执行的中断服务函数。

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()开启中断。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈