基于TI-RTOS的CC2650DK开发(6)---硬件中断


3.4 硬件中断
硬件中断(Hwis)是应用为了回应外部异步事件所必须处理的关键进程。SYS/BIOS中特定target/device的Hwi模块用于管理硬件中断。请阅读概述,请参考document introducing Hwis。
在典型的嵌入式系统中,中断由装置周边设备或由外部设备传给处理器。两种情况都使中断由处理器导向ISR地址。任何影响Swi和Task调度的SYS/BIOS APIs中断处理都必须使用C或C++编写。早期SYS/BIOS版本所为调用汇编语言所使用的HWI_enter()/HWI_exit宏都不再提供。
跟SYS/BIOS没有互动的汇编ISRs可由Hwi_plug()指定。这类ISRs必须做自己上下文的相关内容。它们可以使用中断关键字、C函数或汇编语言函数。
所有硬件中断都会运行至结束,如果Hwi在它的ISR有机会运行前提交了多次,那么ISR只会运行一次。为此,应当将执行Hwi中断的函数代码最小化。
如果要让中断为全局可用,可以调用Hwi_enable(),ISR可被任意eanbled过的中断抢占。
Hwis不能为指定target使用芯片支持库(CSL)。作为替代,可参考第8章硬件抽象层APIs的相关内容。