NVIC原理和使用

NVIC(嵌套向量中断控制器)(中断总控制器),是存在于内核中的控制器

NVIC支持256个中断(16个内核中断,240个外部中断),有256个优先级,允许裁剪(比如ST公司就把其优先级裁剪为了16个)

中断向量表

用来存放中断处理函数首地址的,存放在.s文件中

NVIC相关常用寄存器介绍:ISER(中断使能寄存器)、ICER(中断除能寄存器)、AIRCR(应用程序中断及复位控制寄存器)、IPR(外部中断优先级控制寄存器)

非常用寄存器

工作原理简图:

(外部中断)

(内核中断)

中断优先级的基本概念

抢占优先级(抢占CPU资源的优先级)、响应优先级、自然优先级

中断优先级分组

NVIC的使用

最常用的三个函数

HAL_NVIC_SetPriorityGrouping

HAL_NVIC_SetPriority

HAL_NVIC_EnableIRQ

了解寄存器

SCB_AIRCR(优先级分组寄存器)

NVIC_IPRx(外部中断优先级寄存器)(内部是SHPR)

NVIC_ISER (中断使能寄存器)

相关推荐
SundayBear8 小时前
基于STM32的RT-Thread移植
单片机·嵌入式硬件
R6bandito_10 小时前
STM32中printf的重定向详解
开发语言·经验分享·stm32·单片机·嵌入式硬件·mcu
清风66666610 小时前
基于单片机的元胞自动机仿真系统设计
单片机·嵌入式硬件·毕业设计·课程设计
千千道10 小时前
利用keil +RASC给瑞萨RA8D1编译烧写程序
单片机·嵌入式硬件·mcu·物联网
充哥单片机设计11 小时前
【STM32项目开源】基于STM32的智能家居安防系统
stm32·嵌入式硬件·智能家居
点灯小铭11 小时前
基于单片机的N型热电偶PID锅炉温度控制系统
单片机·嵌入式硬件·毕业设计·课程设计
GilgameshJSS11 小时前
STM32H743-ARM例程15-RTC
c语言·arm开发·stm32·实时音视频
机器视觉知识推荐、就业指导13 小时前
STM32 外设驱动模块【含代码】:SG90 舵机模块
stm32·单片机·嵌入式硬件·学习
北京迅为13 小时前
【北京迅为】iTOP-4412精英版使用手册-第三十五章 WEB控制LED
linux·嵌入式硬件·嵌入式·4412
future141218 小时前
单片机学习日记
单片机·嵌入式硬件·学习