STM32——如何配置外部中断

本文详细介绍了STM32外部中断配置的步骤,包括开启IO口时钟、设置映射关系、初始化线上中断、配置中断分组、编写中断服务函数及清除中断标志位。还提到了代码优化建议,如使用宏定义和库函数操作GPIO口。

中断服务函数列表

在这里插入图片描述

IO口外部中断在中断向量表中只分配了7个中断向量,也就是只能使用7个中断服务函数

EXTI0_IRQHandler           
EXTI1_IRQHandler
EXTI2_IRQHandler           
EXTI3_IRQHandler           
EXTI4_IRQHandler           
EXTI9_5_IRQHandler         
EXTI15_10_IRQHandler 

外部中断一般步骤

  • 1、开启IO口时钟,初始化IO口为输入。调用函数:GPIO_Init();
  • 2、开启IO口复用时钟。调用函数:RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
  • 3、设置IO口与中断线的映射关系。调用函数:GPIO_EXTILineConfig();
  • 4、初始化线上中断,设置触发条件等。调用函数:EXTI_Init();
  • 5、配置中断分组(NVIC),并使能中断。调用函数:NVIC_Init();
  • 6、编写中断服务函数。调用函数:EXTIx_IRQHandler();
  • 7、清除中断标志位。调用函数:EXTI_ClearITPendingBit()。

硬件:
LED——GPIOB,GPIO_Pin_5
KEY——GPIOE,GPIO_Pin_1

代码:

void LED_Init(void)											 //led初始化配置										
{
     GPIO_InitTypeDef GPIO_InitStructu
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值