STM32 NVIC_SetPriority()中断优先级

转载自http://bbs.eeworld.com.cn/thread-331983-1-1.html

NVIC_SetPriority(SysTick_IRQn, 0x04)

NVIC_SetPriority(SysTick_IRQn, n);
n=0x00~0x03 设置Systick为抢占优先级0
n=0x04~0x07 设置Systick为抢占优先级1
n=0x08~0x0B 设置Systick为抢占优先级2
n=0x0C~0x0F 设置Systick为抢占优先级3
NVIC_SetPriority函数指定中断优先级的寄存器位(STM32只用4位来表示优先级)的数据,中断优先级组设置为了2,即高2位用于指定抢占式优先级,低2位用于指定响应优先级,0x00~0x03高2位为0,
所以抢占优先级为0;0x04~0x07高2位为1,所以抢占优先级为1,以此类推。
此帖出自stm32/stm8论坛

网上搜索了很多网页,都是这样的说明。其实我是想知道优先级0和优先级1比,谁的优先级更高。

摘自
https://blog.csdn.net/yx_l128125/article/details/9703843
前提条件1:组别优先顺序(第0组优先级最强,第4组优先级最弱):NVIC_PriorityGroup_0>NVIC_PriorityGroup_1>NVIC_PriorityGroup_2>NVIC_PriorityGroup_3>NVIC_PriorityGroup_4

发表评论

邮箱地址不会被公开。 必填项已用*标注