尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

stm32f103单片机的NVIC分组2介绍

stm32f103单片机的NVIC分组2介绍 NVIC_PriorityGroup_2是STM32中断优先级的一种分组方式它决定了如何分配用于配置中断优先级的4个寄存器位。选择这个组别意味着将2个位分配给抢占优先级2个位分配给响应优先级。下面是对这个组别的具体介绍优先级分配与取值范围在NVIC_PriorityGroup_2模式下抢占优先级 (Preemption Priority)占用2个位因此有2^2 4个优先级级别取值范围为0~3。响应优先级 (Subpriority)占用2个位因此也有2^2 4个优先级级别取值范围为0~3。请注意对于所有优先级数值越小代表的优先级越高0是最高优先级。抢占与响应优先级的作用这两种优先级在中断嵌套和响应时扮演不同角色抢占优先级决定中断能否嵌套。一个高抢占优先级的中断可以打断任何正在执行的低抢占优先级的中断服务程序。响应优先级在抢占优先级相同的中断之间起作用。它不能打断正在执行的、抢占优先级相同但响应优先级较低的中断。当两个抢占优先级相同的中断同时发生时响应优先级高的那个会优先执行。如果在NVIC_PriorityGroup_2下两个中断的抢占优先级和响应优先级都相同那么它们的执行顺序将由中断向量表中的硬件编号决定编号靠前的先执行。总结与建议NVIC_PriorityGroup_2是一个非常平衡和常用的配置。它提供了4级抢占优先级足以满足大多数需要中断嵌套的场景同时也提供了4级响应优先级方便在同级中断中进行更细致的排序。这个分组是许多STM32官方例程和第三方库如FreeRTOS的默认配置具有很好的兼容性。
返回列表