stm32外部中断HAL库配置

PA0接WK_UP按键,按下高电平,松开低电平。

配置流程:

1.配置IO口时钟

 __HAL_RCC_GPIOA_CLK_ENABLE();

2。配置IO口

  GPIO_InitTypeDef GPIO_InitStruct = {0};
    //   配置PA0引脚
  GPIO_InitStruct.Pin = GPIO_PIN_0;

   //    配置为双边沿中断模式
  GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING;
   //   默认下拉
  GPIO_InitStruct.Pull = GPIO_PULLDOWN;
  //   初始化PA0
  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);

3.找对应的中断函数

以对应引脚PA0的中断向量EXTI0在startup_stm32f103xb.s寻找对应中断函数EXTI0_IRQHandler

将中断处理代码写入中断函数中

void EXTI0_IRQHandler(void)
{
    /* 清中断标志位*/
    HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0);
    /* 双边沿计数 */
	cnt=cnt+1;

}

4.使能中断并配置中断优先级

//配置EXTI0优先级 第0组第0个 
HAL_NVIC_SetPriority(EXTI0_IRQn, 0, 0);
//使能中断
  HAL_NVIC_EnableIRQ(EXTI0_IRQn);

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值