STM32/AMP32F407进入低功耗待机模式后立马被唤醒的解决办法

最近项目用到低功耗,但是调试发现进入待机就被唤醒的问题,清除WU、SB两个唤醒标志位,也依然被立马唤醒一次。

/* 进入待机模式 */
    HAL_PWR_EnterSTANDBYMode();

在这里插入图片描述
通过极海的数据手册终于发现,我们在使能WAKE-UP PA.0唤醒脚造成的,所以问题找到了,使能PA.0后清除一次WU标志就能解决。

	/* 使能WKUP引脚的唤醒功能 ,使能PA0*/
    HAL_PWR_EnableWakeUpPin( PWR_WAKEUP_PIN1);
    //***->使能WKUP引脚的唤醒功能后,必须清除 唤醒事件产生标志,极海数据手册100页
    __HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);
	//暂停滴答时钟,防止通过滴答时钟中断唤醒
    HAL_SuspendTick();
    /* 进入待机模式 */
    HAL_PWR_EnterSTANDBYMode();
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值