STM32F407中断优先级(简单详解篇)

STM32F407中断优先级(简单详解篇)

STM32有十六个优先级

一)STM32分组为:组0-4

(二)分组配置在寄存器SCB->AIRCR中:
STM32F407中断优先级(简单详解篇)_第1张图片
三)解析第二点

  1. 组0就是4位都用来设置成响应优先级,2^4=16位都是响应优先级

  2. 组1分为(2^1) 两个抢占优先级,在这两个抢占优先级里面还分别有(2^3) 八个响应优先级,(2^1) * (2^3) =16

  3. 组1分为(2^2) 四个抢占优先级,在这四个抢占优先级里面还分别有(2^2) 四个响应优先级,(2^2) * (2^2) =16

  4. 组1分为(2^3) 八个抢占优先级,在这八个抢占优先级里面还分别有(2^1) 两个响应优先级,(2^3) * (2^1) =16

  5. 组1分为(2^4)十六个都是抢占优先级 (2^4) =16

(四)使用示例

  1. NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级

  2. 也就是说可以配置成四个抢占优先级,在这四个抢占优先级中还可以配置四个响应优先级

(五)抢占优先级和响应优先级的区别
STM32F407中断优先级(简单详解篇)_第2张图片
请参照例子:
在这里插入图片描述

你可能感兴趣的:(STM32)