STM32的中断分组究竟是个什么东西?

转载---------

作者:匿名用户

链接:https://www.zhihu.com/question/36778342/answer/70571778
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


STM32的中断向量具有两个属性,一个是抢占属性,一个是响应属性,其属性编号越小,表明它的优先级越高。抢占属性,是指打断其它中断的属性,具有这个属性会出现嵌套中断(在执行中断服务函数A的过程中被中断B打断,执行完中断服务函数B再继续执行中断服务函数A)。响应属性,应用在抢占属性相同的情况下,当两个中断向量的抢占优先级相同时,如果两个中断同时到达,则先处理优先级高的中断;但如果不是同时到达,即使后来的中断的响应优先级高,也不能打断正在执行的中断。子优先级就是响应优先级。中断分组,是按照抢占优先级和响应优先级的分配方式分为不同的五组。因为抢占优先级和响应优先级的数量由一个4位的数字决定,所以只可以配置=16种中断向量的优先级,4位数字有五种分配方式:第0组:所有4位用来配置响应优先级。即16种中断向量的响应优先级别都不相同第1组:最高1位用来配置抢占优先级,低3位用来配置响应优先级。即有=2种级别的抢占优先级(0级和1级),有=8种级别的响应优先级。16种中断向量中,有8种中断的抢占优先级为0级,响应优先级为0~7,;有8种中断的抢占优先级为1级,响应优先级为0~7。第2组:2位用来配置抢占优先级,2位用来配置响应优先级。即有=4种抢占优先级,有=4种响应优先级。第3组:高3位用来配置抢占优先级,最低1位用来配置响应优先级。即有=8种抢占优先级,2种响应优先级。第4组:所有4位用来配置抢占优先级。16种中断向量有16种不同的抢占优先级,没有响应属性。
  • 16
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值