您的位置 首页 IC

stm32 nvic的了解

因为stm32有43个中断源,当同时用到多个中断时,就要指定其中断的优先级了。nvic即是中断向量的控制!由SCB->AIRCR寄存器控制,SCB->AIRCR…

由于stm32有43个中止源,当一起用到多个中止时,就要指定其中止的优先级了。

nvic便是中止向量的操控!由SCB->AIRCR寄存器操控,SCB->AIRCR中现在只用到4位,也便是最高能有16级中止嵌套,假如全运用的话能够到达256级

(1);选用优先级分组(实践便是选几位用于主优先级几位用于辅优先级)

group0:选0位用于主优先级,4位用于辅优先级。

group1:选1位用于主优先级,3位用于辅优先级。

group2:选2位用于主优先级,2位用于辅优先级。

group3:选3位用于主优先级,1位用于辅优先级。

group4:选4位用于主优先级,0位用于辅优先级。

(2)这样打个比方不恰当的比方吧,假如把一个中止比作一个人,则他的国籍便是主优先级,省籍便是辅优先级。主优先级高的能够

打断主优先级低的中止(如主优先级0(咱们叫他美国)的中止高于主优先级2(咱们叫他伊拉克)的中止,则主优先级为0的中止(美国人)能够

打断主优先级为2的中止(伊拉克人))。而关于辅优先级,咱们称之为省籍,比方两个人都是中国人(主优先级),一个是北京的(假定辅优先级为0

,高),一个是山西的(省籍为辅优先级,假定为2,低),则北京人不能去打断山西人做的事,可是,假如有同一个时机,则应该先给北京人,即

当一起要呼应两个这两个主优先级相同的中止时,辅佐优先级高的先呼应。假如两个中止的主,辅优先级都相同时,则在中止向量表中靠前的

先呼应。

(3)group4能够最多履行15个嵌套和一个中止,group3能够最多履行7个嵌套和一个中止,顺次类推。

所以,

group4能够指定主优先级的规模为0——15,辅优先级的规模为0

group3能够指定主优先级的规模0———7,辅优先级的规模为0—-1

group2能够指定主优先级的规模0———3,辅优先级的规模为0—-3

group1能够指定主优先级的规模0———1,辅优先级的规模为0—-7

group1能够指定主优先级的规模0,辅优先级的规模为0—-15

所谓嵌套,便是主优先级高的能够打断主优先级低的中止的履行(嵌套)。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/276560.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部