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)调用回调函数实现功能

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

相关推荐
门思科技1 小时前
LoRaWAN通信协议详解:架构、加密机制与核心应用
运维·服务器·网络·嵌入式硬件·物联网
小柯博客2 小时前
STM32MP1 没有硬件编解码,如何用 CPU 实现 H.264 编码支持 WebRTC?
c语言·stm32·嵌入式硬件·webrtc·h.264·h264·v4l2
Jerry丶Li4 小时前
二十九、STM32的USART (串口发送)
stm32·单片机·嵌入式硬件
d111111111d5 小时前
STM32外设学习-串口数据包笔记-(数据包的了解)
笔记·stm32·单片机·嵌入式硬件·学习
EVERSPIN5 小时前
MCU单片机,常用32位单片机,低功耗单片机MM32L系列
单片机·mcu单片机·32位单片机·低功耗单片机·mm32l系列
idcardwang6 小时前
esp32-s3-supermini使用arduio IDE进行mpu6050的数据读取
ide·单片机
纳祥科技10 小时前
方案分享:一款基于低功耗单片机的腰腹甩脂机方案
单片机·嵌入式硬件
点灯小铭14 小时前
基于单片机的电子琴设计与乐曲存储播放实现
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
hemama_14 小时前
STM32F103VET6开发板例程(一)-LED
stm32·单片机·嵌入式硬件