μC/OS-Ⅱ中断处理, 在四种ERTOS 中是最简单的。一个中断向量上只能挂一个中断服务子程序ISR, 而且用户代码必须都在ISR 中完成, ISR 做的事情比较多, 中断延时相对较长。系统提供两个函数OSIntEnter( ) 和OSIntExit( ) 用来进行中断管理。OSIntEnter( ) 通知内核即将开始ISR, 使内核可以跟踪中断嵌套, 最大嵌套深度为255。在ISR 的末尾, 使用OSInt-Exit( ) 判断中断是否已经脱离了所有的中断嵌套。如果脱离了中断嵌套, 内核函数需要判断是否有更高优先级的任务进入就绪状态, 如果有系统要让更高优先级的任务进入就绪状态。在这种情况下, 中断要返回到更高优先级的任务, 而不是被中断了的任务, 因而中断恢复时间要稍长一些。
嵌入式操作系统分析(二):中断之软件实现
最新推荐文章于 2023-05-09 23:02:21 发布