STM32学习和实践笔记(17):STM32外部中断(EXTI)的整体介绍

**1.**外部中断介绍

1.1EXTI简介

STM32F10x外部中断/事件控制器(EXTI)包含多达 20 个用于产生事件/中断请求的边沿检测器。(事件与中断的区别,可参看STM32---中断与事件的区别_中断和事件的区别-CSDN博客

具体有哪些,就是参看这个中断向量表

20个EXTI的具体组成如下:

上面这16个对应GPIO的16 IO口的中断。

开发板上所使用的这个芯片STM32F103,没有最后一个以太网唤醒的中断,所以是19个EXTI。

EXTI的每根输入线都可单独进行配置:以选择类型(中断或事件)和相应的触发方式(上升沿触发、下降沿触发或边沿触发),还可独立地被屏蔽。

上图中类似9处写的那些20,是表示20个EXIT都是同样的连接方式。

信号从输入线进来,有两种路线:

如果是中断,就走1,2,3,4,5

如果是事件,就走1,2,3,6,7,8

输入线1,就是芯片外部的触发信号的输入处,对EXIT来说,通常就是GPIO的某一个引脚。

边沿检测电路2,用来设定是上升沿触发还是下降沿触发,或者两者都出现才触发。触发就输出高电平到3,否则输出低电平。

或门3,有两个输入口,只要有一个有高电平,就会输出高电平。这个请求信号会保存在请求挂起寄存器中。

由与门4可以知道,如果将中断屏蔽寄存器设为0,那么就可以屏蔽收到的中断信号。当中断屏蔽寄存器设为1并且请求挂起寄存器也为1时,就可将中断送到中断控制器。

相关推荐
ndjnddjxn3 小时前
Python学习-1
学习
CYTElena4 小时前
JAVA关于集合的笔记
java·开发语言·笔记
shuangrenlong4 小时前
笔记ANR原理
笔记
Dillon Dong4 小时前
从C到Simulink: 使用 `simulation_stubs`(仿真存根)处理MBD中的硬件依赖
c语言·stm32·matlab
一 乐4 小时前
健康管理|基于springboot + vue健康管理系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·学习
wdfk_prog4 小时前
[Linux]学习笔记系列 -- [fs]mnt_idmapping
linux·笔记·学习
旖旎夜光5 小时前
Linux(7)(下)
linux·学习
CYTElena5 小时前
关于JAVA异常的笔记
java·开发语言·笔记·语言基础
代码游侠5 小时前
学习笔记——HTML网页开发基础
运维·服务器·开发语言·笔记·学习·html
代码游侠5 小时前
应用——基于C语言实现的简易Web服务器开发
运维·服务器·c语言·开发语言·笔记·测试工具