STM32外部中断控制器EXTI详解

发布者:Harmonious222最新更新时间:2024-09-03 来源: elecfans关键字:STM32  EXTI 手机看文章 扫描二维码
随时随地手机看文章

1.概述

什么是外部中断控制器,外部中断控制器在STM32芯片中处于什么位置,它的作用是什么,EXTI与GPIO的映射关系?


1.1外部中断及外部中断控制器的定义:由外部GPIO高低电平变化引起的中断我们称之为外部中断,而外部中断控制器本质上是寄存器、配置该寄存器可以选择哪些GPIO的高低电平变化可以触发中断。


1.2外部中断控制器在STM32芯片中的位置:如下图所示处于片内外设部分

pYYBAGRAtP2AZmhUAAB4ka2DRxY098.jpg?imageView2/2/w/1000

1.3外部中断控制器作用:用于管理那些由于GPIO引脚高低电平变化或者来自RTC和USB外设引起的中断

1.4EXTI与GPIO的映射关系:如下图所示标号为0的GPIO为一组(PA0 PB0 ...)这样的通道选择器共有16个,每个通道选择器只选择该组中某一个GPIO

poYBAGRAtP6AWca_AADUQPofBis693.jpg?imageView2/2/w/1000

2.系统配置控制器SYSCFG

SYSCFG是什么,和外部中断控制器的关系是什么,如何使用SYSCFG?

2.1什么是系统配置控制器SYSCFG:用于管理对可执行代码的存储区域的重映射、选择以太网PHY接口以及管理GPIO的外部中断线

2.2和外部中断控制器的关系是什么:由2.1对SYSCFG的定义可知SYSCFG可以管理GPIO的外部中断线,如下图所示SYSCFG_EXTICR1寄存器、这样的寄存器共有四个SYSCFG_EXTICR1、SYSCFG_EXTICR2、SYSCFG_EXTICR3、SYSCFG_EXTICR4,总共可以管理16个通道选择器

pYYBAGRAtQCATg6FAACEte7akS0824.jpg?imageView2/2/w/1000

2.3如何使用SYSCFG寄存器(GPIO外部中断部分):通过对EXTIX[3:0]这四位的配置可以选择该组GPIO中某个GPIO作为EXTIX外部中断源的输入;

poYBAGRAtQGAFyPgAADkfcor9wM824.jpg?imageView2/2/w/1000

3.外部中断、事件

在STM32F40X芯片中共有23个中断、事件线可用,其中有16个是GPIO的外部中断线;

外部中断、事件的框图是什么样子,在选择完外部中断的源输入我们还需要做什么?

3.1外部中断、事件的框图是什么样子:如下图所示

poYBAGRAtQSAdIaPAAC6B88goXo743.jpg?imageView2/2/w/1000

3.2在选择完外部中断的源输入我们还需要做什么:

如上图所示GPIO口高低电平的变化会被边沿电路检测所以需要设置上升还是下降沿触发中断即配置上升、下降沿触发选择寄存器;

在配置完边沿选择寄存器后、需要将对应中断使能即配置中断屏蔽寄存器;

当有GPIO中断触发后挂起请求寄存器对应位会被置1,最终中断请求发送至NVIC(挂起请求寄存器不需设置,但处理完中断后需要清除挂起、否则会重复触发中断);

具体寄存器配置可参见”STM32F4xx中文参考手册”page244 EXTI寄存器


关键字:STM32  EXTI 引用地址:STM32外部中断控制器EXTI详解

上一篇:STM32无法连接JLink(Flash读写保护)解决方法
下一篇:STM32 BSRR BRR ODR寄存器详情解析

推荐阅读最新更新时间:2026-03-22 11:02

STM32外部中断控制器EXTI详解
1.概述 什么是外部中断控制器,外部中断控制器在STM32芯片中处于什么位置,它的作用是什么,EXTI与GPIO的映射关系? 1.1外部中断及外部中断控制器的定义:由外部GPIO高低电平变化引起的中断我们称之为外部中断,而外部中断控制器本质上是寄存器、配置该寄存器可以选择哪些GPIO的高低电平变化可以触发中断。 1.2外部中断控制器在STM32芯片中的位置:如下图所示处于片内外设部分 1.3外部中断控制器作用:用于管理那些由于GPIO引脚高低电平变化或者来自RTC和USB外设引起的中断 1.4EXTI与GPIO的映射关系:如下图所示标号为0的GPIO为一组(PA0 PB0 ...)这样的通道选择器共有16个,每个通道选
[单片机]
<font color='red'>STM32</font><font color='red'>外部中断</font><font color='red'>控制器</font><font color='red'>EXTI</font>详解
STM32外部中断事件控制器EXTI概念及使用方法
前言 EXTI: External interrupt / event controller 外部中断/事件控制器 提示:以下是本篇文章正文内容 一、EXTI功能框图 二、使用方法 1.EXTI_InitTypeDef 初始化结构体 1-EXTI_Line:用于产生中断/事件线 2-EXTI_Mode : EXTI模式(中断/事件) 3-EXTI_Trigger:触发(上/下/上下) 4-EXTI_LineCmd:使能或者失能(IMR/EMR) 2.实现步骤 1-初始化要连接到EXTI的GPIO 2-初始化EXTI用于产生中断/事件 3-初始化NVIC,用于处理中断 4-编写中断服务函数 5-main函数 三、
[单片机]
<font color='red'>STM32</font><font color='red'>外部中断</font>事件<font color='red'>控制器</font><font color='red'>EXTI</font>概念及使用方法
STM32单片机的外部中断和中断控制器的特点解析
在外部中断和中断控制器中,我们首先阐述嵌套向量中断控制器(NVIC),他和处理器核的接口紧紧相连。可以实现低延时的中断处理和处理晚到的中断。主要具有以下几个特点: 1.60个可屏蔽中断通道; 2.16个可编程的优先等级; 3.低延时的异常和中断处理; 4.电源管理控制; 5.系统控制寄存器的实现。 其中每一个STM32系列芯片都会有一个产品向量表,博友们可以在相关 产品说明书中查看具体的中断问题。 接下来介绍中断优先级 在M3中有两个优先级的概念-抢占优先级和响应优先级。每一个中断源都必须指定这两种优先级。这里的中断抢占其实和89C51差不多,高中断优先级可以抢占正在进行中断处理的低中断优先级,也就是我们所说的中断嵌套。学习过
[单片机]
<font color='red'>STM32</font>单片机的<font color='red'>外部中断</font>和中断<font color='red'>控制器</font>的特点解析
STM32学习笔记】深入解析EXTI外部中断功能
EXTI外部中断 表的详细内容在STM32F10xxx参考手册132页有, 然后右边这里还有个中断的地址,这个地址是干什么的呢?这个是因为我们程序中的中断函数,它的地址是由编译器来分配的,是不固定的。但是我们的中断跳转由于硬件的限制,只能跳到固定的地址执行程序,所以为了能让硬件跳转到一个不固定的中断函数里,这里就需要在内存中定义一个地址的列表。这个列表地址是固定的,中断发生后,就跳到这个固定位置,然后在这个固定位置由编译器,再加上一条跳转到中断函数的代码,这样中断跳转就可以跳转到任意位置。这个中断地址的列表,就叫中断向量表。 NVIC基本结构 这个NVIC的名字叫做嵌套中断向量控制器,在STM32中,它是用来统一分配
[单片机]
【<font color='red'>STM32</font>学习笔记】深入解析<font color='red'>EXTI</font><font color='red'>外部中断</font>功能
stm32 NVIC EXTI
stm32 NVIC EXTI NVIC EXTI 原理图 main.c exti.h exti.c stm32f10x_it.c NVIC NVIC 是嵌套向量中断控制器,控制着整个芯片中断相关的功能,它跟内核紧密耦合,是内核里面的一个外设。配置中断的时候我们一般只用 ISER、ICER 和 IP 这三个寄存器,ISER 用来使能中断,ICER 用来失能中断,IP用来设置中断优先级。NVIC 结构体定义如下。 typedef struct { __IO uint32_t ISER ; /*! Offset: 0x000 Interrupt Set Enable R
[单片机]
STM32单片机外部中断的设置方法
比如要是使用GPC3作为中断源,上升沿触发外部中断必须配置好EXTI和NVIC 使用以下函数打开SYSCFG的时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE) GPIO设置如下 void GPIO_Configuration(void) { GPIO_InitTypeDef GPIO_InitStructure; /* GPIOF Periph clock enable */ RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_S
[单片机]
<font color='red'>STM32</font>单片机<font color='red'>外部中断</font>的设置方法
STM32基于标准外设库的外部中断配置
本文介绍了STM32基于标准外设库的外部中断配置,以及基于参考手册如何更加寄存器配置外部中断 2 STM32的外部中断 下图来自《STM32参考手册》,从整个架构图可以知道,外部中断的功能可以配置六个寄存器; 中断屏蔽寄存器(EXTI_IMR) 事件屏蔽寄存器(EXTI_EMR) 上升沿触发选择寄存器(EXTI_RTSR) 下降沿触发选择寄存器(EXTI_FTSR) 软件中断事件寄存器(EXTI_SWIER) 挂起寄存器(EXTI_PR) EXTI支持配置20个中断和事件屏蔽位; GPIO端口以下图的方式连接到16个外部中断/事件线上;EXTI_Line0 — EXTI_Line15; EXTI_Line16 连接到PVD
[单片机]
<font color='red'>STM32</font>基于标准外设库的<font color='red'>外部中断</font>配置
STM32如何配置外部中断STM32外部中断配置步骤
作为一款现代化的微控制器,STM32系列芯片在各种应用场合中广泛应用。其中最常见的应用是外部中断。本文将详细介绍如何在STM32中配置外部中断。 1.了解STM32的外部中断结构 在STM32中,外部中断是由NVIC(Nested Vector Interrupt Controller)进行控制的。STM32 的芯片可以选择4个方向上跌沿触发或上升沿触发的外部中断线。这些中断线可以通过中断线控制器(EXTI)进行设置,并可以绑定到不同的GPIO端口上,以实现具体的外部中断功能。在进行外部中断的初始化过程中,需要配置外部中断的触发方式、中断优先级和中断使能等参数。 2.配置外部中断的触发方式 STM32支持上升沿、下降沿和双边沿触发
[单片机]
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved