STM32中断非常强大,每个外设都能产生中断
中断的优先级数值越小,说明他的中断优先级越高
配置中断需要了解NVIC寄存器:
NVIC是嵌套向量中断控制寄存器,控制中断的相关功能;它与内核紧密结合,是内核里的一个外设。管理着包括内核和片上的所有外设的中断相关功能。
因此配置中断需要参考下面两个头文件:core_cm3.h 和 misc.h
在配置中断的时候我们一般只配置ISER和ICER IP这3个寄存器:
1)ISER使能中断
2)ICER清除中断
3)设置中断的优先级
给出官方手册寄存器的资料
编程要领:
1)使能中断请求(外设中某个中断)
2)配置优先级分组
3)配置NVIC寄存器 初始化NVIC结构体
4)编写中断函数
static void EXTI_NVIC_Config(void)
{
NVIC_InitTypeDef NVIC_InitStructure;
//配置NVIC为优先组1
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
//配置中断源:按键1
NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn ;
//配置抢占优先级:1
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
//配置子优先级:1
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1 ;
//使能中断通道
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE ;
NVIC_Init(&NVIC_InitStructure);
}
上一篇:STM32-systick系统定时器
下一篇:stm32实时时钟——RTC
设计资源 培训 开发板 精华推荐
- LT3063 的典型应用 - 具有输出放电功能的 45V Vin、微功率、低噪声、200mA LDO
- ESP8266系统板
- 使用 RP40-11024DFR DC/DC 转换器并根据 EN55022 Class B 进行 EMC 滤波的典型应用(110Vin 双输出)
- REF198 负精密基准电压源的典型应用电路不使用精密电阻器
- MC34071ADR2G 有源带通滤波器运算放大器的典型应用
- 使用 Analog Devices 的 AD7986BCPZ 的参考设计
- 用于 2 相无桥 PFC 的 FPDB40PH60B PFC SPM 3 系列的典型应用
- TWR-MCF5225X-KIT,用于 MCF52259CAG80 V2 ColdFire 微控制器的 ColdFire MCF5225X 连接塔式系统模块
- LF18ABPT-TR 1.8V 极低压降稳压器的典型应用,带开关
- 驱动电路