STM32 外部中断详解(最详细的EXTI外部中断笔记)

1.EXTI外部中断

中断概念

总结:当中断满足的时候,CPU暂停运行,进入中断执行相应逻辑

中断执行流程

中断优先级:根据多个中断的紧急程度,进行顺序执行

中断嵌套:中断内部嵌套中断,当执行一级中断的时候,如果再次触发内部中断,就会进入二级中断 执行逻辑: 主程序->一级中断->二级中断 执行完成后 二级中断->一级中断->主程序 继续运行

概念:

内部外设中断:

1.NVIC

Nested Vectored Interrupt Controller的缩写,即嵌套向量中断控制器。

在STM32等微控制器中,NVIC用于管理中断,它可以实现中断的优先级设置、中断的使能和禁用、中断的嵌套等功能。

总结:引脚电平变化,触发中断,软件触发:程序触发,支持所有的GPIO口,但是Pin号相同的,不能同时触发中断。

NVIC优先级分组

以医院排号为例,响应优先级可以插队看病,我没有取了最后一个号,但是等上一个病人看完病,不管排了多少人,我都可以先看病 。 抢占优先级可以不等上一个病人看完,直接叫号进行看病,抢占优先级高的就可以进行中断嵌套。两个中断的抢占优先级跟响应优先级都一样的,以中断号为排序。数字越小优先级越高

解释:四位寄存器 即为 0000

如果抢占优先级0位,取值为0 那么到1111 就有时16种情况

如果抢占优先级1位,那么高位置只有0跟1 两种选择 , 而000对应0 111对应4+2+1 =7,所以相应优先级有8种选择,而抢占优先级有2 种选择 ,数字越小优先级越高。

NVIC 的基本结构

CPU 为医生,NVIC 为叫号系统,会可以优先安排紧急的病人,最左侧为病人;

2.APIO中断引脚选择器

他可以在三个GPIO的16个引脚里面选择一个进入EXTI通道

APIO 主要有两个功能,第一个就是刚刚讲到的中断引脚选择,第二个就是引脚重映射,这里补充一下引脚重映射的概念。

引脚重映射:

是指将特定外设功能的引脚重新分配到不同的引脚上,以满足不同的硬件设计需求和提高系统的灵活性比如PA0有很多作用,但是不能同时执行两种功能,就可以把PA0重新映射到新的引脚上。

3.EXTI

(External Interrupt/Event Controller,外部中断/事件控制器)

中断响应跟事件响应的关系与区别

事件相应不会触发中断,而是触发别的外设的中断操作,属于与外设的联合工作,而中断响应属于正常流程,引脚电平变化触发中断。

这里的输入线,就是20根输入线 ——> 边沿检测电路 上升沿触发寄存器跟下降沿寄存器可以选择触发方式——>或门输入端

逻辑符号说明:

  1. 或门: 长得像导弹头(可以有多个输入,但是只能有一个输出),只有全部输入0 输出才为0

  2. 与门:大于半圆(同样有多个输入,但是只有一个输出,只要有一个为0,那么输出就为0,只有全部为1 才会为1)

  3. 非门: 三角形,一个输入输出,输入0 就为1 输出1 就为0

  4. 数据选择器,符号为梯形,有多个输入,一个输出,侧面有选择控制端,根据控制端数据,从输入选择一个到输出,这些就是常见的逻辑符号

总结:外部中断主要应用于以下场景:实时响应紧急事件,如工业系统故障检测;快速响应用户交互,提升设备响应速度;实现与外部设备同步;用于低功耗系统的唤醒;以及在安全关键系统中进行安全监控。

  • 18
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值