LM4F120 2.5.5 异常优先级

翻译自ti文档p102页


2.5.5 异常优先级

如表2-8所示,所有的异常都拥有一个相关的优先级,更低的优先级值表示的优先级越高,除了重置,硬错误和不可屏蔽中断外的异常都可以更改。如果程序没有更改任意优先级,则所有的异常会拥有0的优先级。如果想要了解更多关于设置异常优先级的信息,请看165页和147页。

注意:Stellaris把可更改的优先级值范围设定为0-7,。这意味着重置,硬错误和不可屏蔽中断拥有固定的负数优先级值,永远拥有比其他异常更高的优先级。

比如说,把IRQ[0]赋予个高优先级值,同时把IRQ[1]赋予低优先级值意味着IRQ[1]的优先级比IRQ[0]高。如果IRQ[1]和IRQ[1]同时触发的话,IRQ[1]将在IRQ[0]之前进行处理。

如果多个等待处理的异常拥有相同的优先级,则拥有最低异常序号的异常会优先处理。比如IRQ[0]和IRQ[1]都等待处理而且拥有相同的优先级,IRQ[0]将优先于IRQ[1]进行处理。

当处理器正在执行一个异常处理程序,如果一个拥有更高优先级的异常触发了,那么这个异常处理程序会被抢占。如果一个异常发生在拥有相同优先级的异常处理程序运行时,则那个异常处理程序不会被抢占,此时不考虑异常序号。新中断(异常)的状态会改为待处理(Pending)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值