当前位置:首页 > 嵌入式 > 嵌入式分享
在 STM32 微控制器的中断系统中,外部中断 / 事件控制器(EXTI)与嵌套向量中断控制器(NVIC)是支撑中断响应与调度的核心组件,二者分工明确又紧密协同 ——EXTI 负责感知外部信号触发并向 NVIC 传递中断请求,NVIC 则承担中断优先级管理与 CPU 中断响应的调度,共同构建起 STM32 高效、灵活的中断处理体系。无论是外部设备的状态变化响应(如按键触发、传感器数据就绪),还是内部外设的事件通知(如定时器溢出、DMA 传输完成),都依赖这两个组件的协同工作,其底层逻辑的合理性直接决定了 STM32 系统的实时性与可靠性,是嵌入式开发者必须深入掌握的核心技术。
EXTI 作为 STM32 中断系统的 “信号感知前端”,其核心功能是检测外部引脚或内部外设的特定事件(如电平变化、脉冲信号),并将符合条件的事件转换为中断请求信号传递给 NVIC。从硬件架构来看,EXTI 主要由事件请求线路、边沿检测电路、中断屏蔽寄存器、挂起寄存器等模块组成,支持多达 23 个中断 / 事件请求通道,涵盖 16 个外部 GPIO 引脚对应的通道(EXTI0~EXTI15)以及 7 个内部外设事件通道(如 LVD、RTC 闹钟、USB 唤醒等)。对于外部 GPIO 引脚触发的中断,EXTI 通过 GPIO 与 EXTI 的映射关系实现信号接入 ——STM32 的每个 GPIO 引脚可通过 SYSCFG_EXTICR 寄存器配置映射到对应的 EXTI 通道,例如 PA0、PB0、PC0 等引脚均可映射到 EXTI0 通道,但同一时刻仅能有一个 GPIO 引脚与该通道绑定,避免信号冲突。边沿检测电路是 EXTI 的核心检测单元,支持上升沿触发、下降沿触发或双边沿触发三种模式,开发者可通过 EXTI_RTSR(上升沿触发选择寄存器)和 EXTI_FTSR(下降沿触发选择寄存器)灵活配置,例如在按键检测场景中,为避免机械抖动导致的误触发,可配置为双边沿触发并配合软件延时消抖逻辑。当 EXTI 检测到符合配置的触发信号后,会在挂起寄存器(EXTI_PR)中对应位置 1 标记中断请求,若该通道未被中断屏蔽寄存器(EXTI_IMR)屏蔽,则中断请求会被发送至 NVIC 等待响应。此外,EXTI 还支持事件模式,与中断模式的区别在于事件模式仅触发内部硬件操作(如启动 ADC 采样、激活 DMA 传输),不会向 NVIC 发送中断请求,无需 CPU 干预,适用于需要硬件级快速响应的场景。
NVIC 作为 STM32 中断系统的 “调度核心”,遵循 ARM Cortex-M 内核的中断控制架构,负责接收来自 EXTI 及其他外设的中断请求,根据预设的优先级规则决定中断的响应顺序,并管理 CPU 的中断进入与退出。其核心特性体现在优先级管理与中断嵌套机制上 ——NVIC 支持多达 256 个中断通道(实际可用数量取决于具体 STM32 型号,如 STM32F1 系列支持 60 个可屏蔽中断),每个中断通道都可配置优先级,优先级由抢占优先级和响应优先级组成,通过 NVIC_IPRx 寄存器设置。抢占优先级决定了中断的抢占能力,高抢占优先级的中断可在低抢占优先级中断的执行过程中强制打断,实现中断嵌套;响应优先级则用于当多个中断具有相同抢占优先级时,决定中断的响应顺序,响应优先级数值越小,优先级越高。例如,若串口接收中断的抢占优先级为 1,定时器溢出中断的抢占优先级为 2,那么当定时器中断正在执行时,串口接收中断可抢占 CPU 资源优先执行;若两者抢占优先级相同,响应优先级数值更小的中断会优先被响应。NVIC 还提供中断使能 / 失能控制、中断挂起 / 解挂等功能,开发者可通过 NVIC_ISERx(中断使能寄存器)和 NVIC_ICERx(中断失能寄存器)控制特定中断的开启与关闭,通过 NVIC_ISPRx(中断挂起寄存器)和 NVIC_ICPRx(中断解挂寄存器)手动挂起或清除中断请求,适用于复杂系统中中断资源的动态管理。当 NVIC 决定响应某个中断请求时,会暂停当前正在执行的程序,保存程序计数器、寄存器等上下文信息,然后跳转到该中断对应的中断服务函数(ISR)执行,执行完成后恢复上下文并返回原程序,整个过程由硬件自动完成,确保中断响应的高效性。
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭