STM32的中断系统理解
扫描二维码
随时随地手机看文章
STM32中的中断分为异常和中断,STM32 目前支持的中断共为 84 个(16 个内核+68 个外部), 16 级可编程中断优先级的设置(仅使用中断优先级设置 8bit 中的高 4 位)和16个抢占优先级(因为抢占优先级最多可以有四位数)。
但我 们 一 般 建 议 从 启 动 文 件startup_stm32f10x_hd.s 中查找的,因为不同型号的 STM32 芯片,中断向量表稍微有点区别,在启动文件中,已经有相应芯片可用的全部中断向量。而且在编写中断服务函数时,
需要从启动文件中定义的中断向量表查找中断服务函数名。STM32 的中断如此之多,配置起来并不容易,因此我们需要一个强大而方便的中断控制器 NVIC (Nested Vectored Interrupt Controller)。NVIC 是属于Cortex 内核的器件,不可屏蔽中断(NMI)和外部中断都由它来处理,而 SYSTICK 不是由 NVIC 来控制的。