中断是stm32重要的一部分知识,stm32含有68个可屏蔽中断通道,包含EXTI、TIM、ADC、USART、SPI、I2C、RTC等多个外设,不同系列含有的中断通道不同,需参考具体系列的数据手册,在此无法详细介绍,大家想详细了解中断的知识可以去找stm数据手册进行更加深入的学习。所以本文主要是带大家了解什么是外部中断以及外部中断的基本结构和框架,让大家对外部中断有一个简单的认识,后面通过程序让大家更深入了解。
一、EXTI(Extern Interrupt)外部中断(简述)
- EXTI可以监测指定GPIO口的电平信号,当其指定的GPIO口产生电平变化时,EXTI将立即向NVIC发出中断申请,经过NVIC裁决后即可中断CPU主程序,使CPU执行EXTI对应的中断程序
- 支持的触发方式:上升沿/下降沿/双边沿/软件触发
- 支持的GPIO口:所有GPIO口,但相同的Pin不能同时触发中断
- 通道数:16个GPIO_Pin,外加PVD输出、RTC闹钟、USB唤醒、以太网唤醒触发响应方式:中断响应/事件响应
二、EXIT基本结构
三、 EXIT框图
四、复用IO端口(AFIO)
- AFIO主要用于引脚复用功能的选择和重定义
- 在STM32中,AFIO主要完成两个任务:复用功能引脚重映射、中断引脚选择