GPIO中断实现流程

1.我的理解

GPIO中断实现的流程:GPIO外部引脚电平发生跳变触发EXTI中断(包含上升沿触发,下降沿触发,双边沿触发)触发后的信号传送到NVIC,NVIC设置中断优先级包含抢占优先级和分组优先级,同时进行使能(使能的含义就是允许中断触发的信号进入CPU),同时把中断向量表给CPU,CPU根据中断的优先级去处理各个中断。

外部引脚电平变化------------EXTI中断--------------NVIC------------------CPU

EXTI功能:1.上升沿触发中断/下降沿触发中断/双边沿触发中断

2.使能中断:允许中断EXTI进入到NVIC,相当于一个开关

NVIC功能:1.设置中断优先级(抢占优先级/子优先级)

2.使能中断:允许中断从NVIC传到CPU

3.NVIC将中断向量表给CPU,CPU根据表格数据中中断的ID号找到对应的中断位置(相关寄存器位置)去处理中断

CPU功能:1.使能中断:命令cpu去处理中断

2.STM32cubeMX设置

实现功能按键控制开发板上的灯闪烁 stm32DShanMCU-F103按键是PB14, 灯是PC13,按键按下触发中断,灯亮,松开按键触发中断,灯灭

(1)选择PB14引脚连接到GPIO_EXTI14通道

2.选择GPIO设置双边沿触发

3.开启NVIC

3.生成代码

3.生成HAL库相关代码

与上述设置一样,双边沿触发/同时开启NVIC中断

4.内部实现流程

(1)查看中断向量表

(2)中断函数涉及相关的引脚(涉及引脚14)

(3)调用回调函数

(4)调用回调函数实现功能

按键按下,灯亮,按键松开,灯灭

相关推荐
youcans_8 分钟前
【STM32-MBD】(15)Simulink 模型开发之三相互补 PWM
stm32·单片机·嵌入式硬件·matlab·foc
Funing71 小时前
硬件实战项目——纯硬件寻迹小车
嵌入式硬件·电机·电路·智能车
逐步前行2 小时前
STM32_内部结构
网络·stm32·嵌入式硬件
我是一棵无人问荆的小草3 小时前
STM32标准库与HAL库编程差异分析
stm32·单片机·嵌入式硬件
LingLong_roar3 小时前
手搓温湿度传感器(单片机普冉PY32F002AF15P6TU + 温湿度传感器 SHT40-AD1B-R2 + 0.96寸TFT IPS 显示屏)
单片机·嵌入式硬件
~光~~3 小时前
【嵌入式linux学习】06_中断子系统
linux·单片机·学习
XINVRY-FPGA3 小时前
中阶FPGA效能红线重新划定! AMD第2代Kintex UltraScale+登场,记忆体频宽跃升5倍
嵌入式硬件·fpga开发·硬件工程·dsp开发·fpga
不做无法实现的梦~3 小时前
思翼mk32遥控器配置图传和数传教程
linux·嵌入式硬件·机器人·自动驾驶
上海合宙LuatOS3 小时前
LuatOS ——Modbus RTU 通信模式
java·linux·服务器·开发语言·网络·嵌入式硬件·物联网
意法半导体STM323 小时前
【官方原创】FDCAN数据段波特率增加后发送失败的问题分析 LAT1617
javascript·网络·stm32·单片机·嵌入式硬件·安全