EXTI—外部中断/事件控制器(摘自野火)

EXTI—外部中断/事件控制器(摘自野火)

EXTI 简介

EXTI(External interrupt/event controller) —外部中断/事件控制器, 管理了控制器的 20

个中断/事件线。每个中断/事件线都对应有一个边沿检测器,可以实现输入信号的上升沿
检测和下降沿的检测。 EXTI 可以实现对每个中断/事件线进行单独配置,可以单独配置为
中断或者事件,以及触发事件的属性。

EXTI 功能框图

在这里插入图片描述

EXTI 可分为两大部分功能,一个是产生中断,另一个是产生事件 。

EXTI 初始化结构体

typedef struct {
2 uint32_t EXTI_Line; // 中断/事件线
3 EXTIMode_TypeDef EXTI_Mode; // EXTI 模式
4 EXTITrigger_TypeDef EXTI_Trigger; // 触发类型
5 FunctionalState EXTI_LineCmd; // EXTI 使能
6 } EXTI_InitTypeDef; 
  1. EXTI_Line: EXTI 中断/事件线选择,可选 EXTI0 至 EXTI19,可参考表 18-1 选择。
  2. EXTI_Mode: EXTI 模式选择,可选为产生中断(EXTI_Mode_Interrupt)或者产生事
    件(EXTI_Mode_Event)。
  3. EXTI_Trigger: EXTI 边沿触发事件,可选上升沿触发(EXTI_Trigger_Rising)、下
    降 沿 触 发 ( EXTI_Trigger_Falling) 或 者 上 升 沿 和 下 降 沿 都 触 发
    ( EXTI_Trigger_Rising_Falling)。
  4. EXTI_LineCmd:控制是否使能 EXTI 线,可选使能 EXTI 线(ENABLE)或禁用
    (DISABLE)。

猜你喜欢

转载自blog.csdn.net/Exertive/article/details/114212115