摘要:本文深入讲解STM32中断控制器(NVIC)的工作原理,通过外部中断(EXTI)实例演示配置流程,并提供完整代码实现。
目录
-
中断与NVIC概述
-
NVIC关键功能解析
-
EXTI外部中断配置步骤
-
按键触发LED实验
-
常见问题与解决方法
一、中断与NVIC概述
1.1 中断概念
中断是CPU响应紧急事件的机制。当外设触发中断请求,CPU暂停当前任务,执行中断服务程序(ISR),完成后恢复原任务。
1.2 NVIC简介
Nested Vectored Interrupt Controller(NVIC)是Cortex-M内核的中断管理器,负责:
-
中断优先级分配
-
中断嵌套管理
-
快速响应中断
二、NVIC关键功能解析
2.1 优先级分组
STM32支持4位优先级,通过SCB->AIRCR寄存器分组:
NVIC_SetPriorityGrouping(NVIC_PriorityGroup_2); // 常用分组2(2位抢占,2位响应)
2.2 中断使能控制
// 使能EXTI0中断
NVIC_EnableIRQ(EXTI0_IRQn);
// 禁用中断
NVIC_DisableIRQ(EXTI0_IRQn);
2.3 优先级设置
NVIC_SetPriority(EXTI0_I

最低0.47元/天 解锁文章
2215

被折叠的 条评论
为什么被折叠?



