STM32 NVIC中断优先级

来源:本站
导读:目前正在解读《STM32 NVIC中断优先级》的相关信息,《STM32 NVIC中断优先级》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《STM32 NVIC中断优先级》的详细说明。
简介:STM32有84个中断,包括68个可屏蔽中断和16个内核中断。STMF103系列只有60个可屏蔽中断。

1.寄存器 ISER【2】、ICER【2】、ISPR【2】、ICPR【2】均是1有效,写0无效;

ISER【2】:Interrupt Set-Enable Registers,中断使能寄存器。

ICER【2】:Interrupt Clear-Enable Register,中断清除寄存器。

ISPR【2】:Interrupt Set-Pending Register,中断挂起寄存器。

ICPR【2】:Interrupt Clear-Pending Register,中断解挂寄存器。

IABR【2】:Interrupt Active Bit Register,中断活动标志位寄存器。

IPR【15】;Interrupt Priority Register,中断优先级控制寄存器。有15个32位寄存器组成,每个可屏蔽中断占8位,IPR【0】的【31~24】、【23~16】、【15~8】、【7~0】分别对应中断3~0,以此类推,控制60个中断。而每个中断占用的8位只有高4位被使用,通过高4位分配抢占式优先级和响应优先级。

分配关系如下:

第0组:所有4位用于指定响应优先级

第1组:最高1位用于指定抢占式优先级,最低3位用于指定响应优先级

第2组:最高2位用于指定抢占式优先级,最低2位用于指定响应优先级

第3组:最高3位用于指定抢占式优先级,最低1位用于指定响应优先级

第4组:所有4位用于指定抢占式优先级

中断优先级分组在一个程序中只能设定一次。

2.抢占式优先级和响应优先级

Cortex-M3中有两个优先级——抢占式优先级和响应优先级。有人把响应优先级称作“亚优先级”或“福优先级,每个中断源都要被指定这两种优先级。

具有高抢占式优先级的中断可以在具有低抢占式优先级中断执行过程中被响应,这就是中断嵌套。当连个中断源的抢占式优先级相同时,这两个中断源没有嵌套关系,需等待前一个中断执行完成后再执行下一个中断。当两个相同抢占式优先级的中断源同时到来时,具有高响应优先级的中断优先执行,执行完毕后再执行另一个中断;如果两个同时到来的两个中断源具有相同的抢占式优先级和响应优先级时,根据在中断排位表中的顺序决定两个中断执行的顺序。

提醒:《STM32 NVIC中断优先级》最后刷新时间 2024-03-14 00:58:23,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《STM32 NVIC中断优先级》该内容的真实性请自行鉴别。