STM32 EXTI 外部中断寄存器学习笔记

本文详细介绍了STM32微控制器的外部中断配置过程,包括寄存器的功能解释、基本配置步骤,以及如何通过软件触发中断。涵盖了中断屏蔽、事件屏蔽、触发选择等关键寄存器的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

EXTI 外部中断寄存器            
EXTI_IMR中断屏蔽寄存器
1:开放来自线x上的中断请求保留MR19MR18MR17MR16
0:屏蔽来自线x上的中断请求MR15MR14MR13MR12MR11MR10MR9MR8MR7MR6MR5MR4MR3MR2MR1MR0
EXTI_EMR事件屏蔽寄存器
1:开放来自线x上的事件请求保留MR19MR18MR17MR16
0:屏蔽来自线x上的事件请求MR15MR14MR13MR12MR11MR10MR9MR8MR7MR6MR5MR4MR3MR2MR1MR0
EXTI_RTSR上升沿触发选择寄存器
1:允许输入线x上的上升沿触发(中断和事件)保留TR19TR18TR17TR16
0:禁止输入线x上的上升沿触发(中断和事件)TR15TR14TR13TR12TR11TR10TR9TR8TR7TR6TR5TR4TR3TR2TR1TR0
EXTI_FTSR下降沿触发选择寄存器
1:允许输入线x上的下降沿触发(中断和事件)保留TR19TR18TR17TR16
0:禁止输入线x上的下降沿触发(中断和事件)TR15TR14TR13TR12TR11TR10TR9TR8TR7TR6TR5TR4TR3TR2TR1TR0
          
EXTI_SWIER软件中断事件寄存器              
0>1:将设置EXTI_PR中相应的挂起位;如果在EXTI_IMR
EXTI_EMR中允许产生该中断,则此时将产生一个中断。保留SWIER19SWIER18SWIER17SWIER16
通过清除EXTI_PR的对应位(写入’1’),可以清除该位为0。SWIER15SWIER14SWIER13SWIER12SWIER11SWIER10SWIER9SWIER8SWIER7SWIER6SWIER5SWIER4SWIER3SWIER2SWIER1SWIER0
EXTI_PR挂起寄存器(rc w1 中断标志清除)
0:没有发生触发请求
1:发生了选择的触发请求
当在外部中断线上发生了选择的边沿事件,
该位被置’1’。在该位中写入’1’可以清除它,保留PR19PR18PR17PR16
也可以通过改变边沿检测的极性清除PR15PR14PR13PR12PR11PR10PR9PR8PR7PR6PR5PR4PR3PR2PR1PR0
                         
基本配置方式
1使能io复用时钟RCC->APB2ENR|=0x01;
2端口映射AFIO->EXTICR[EXTADDR]|=GPIOx<<EXTOFFSET;
3开启中断EXTI->IMR|=1<<BITx;
4屏蔽line BITx上的事件(默认屏蔽)   //EXTI->EMR|=1<<BITx;
5选择触发方式:上升沿/下降沿/任意电平(不做设置)EXTI->RTSR|=1<<BITx;EXTI->FTSR|=1<<BITx;
端口映射寄存器AFIO->EXTICR[1]             对应IO口:0、1、2、30000: PA[x]引脚0100: PE[x]引脚
AFIO->EXTICR[2]对应IO口:4、5、6、70001: PB[x]引脚0101: PF[x]引脚
AFIO->EXTICR[3]对应IO口:8、9、10、110010: PC[x]引脚0110: PG[x]引脚
AFIO->EXTICR[4]对应IO口:12、13、14、150011: PD[x]引脚
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值