问题背景
- 客户反馈,第一次可以成功进入standby mode最低功耗模式,并且RTC重新开始2秒计时
- 再没成功进入过低功耗(或者说进入低功耗后马上复位了)
- 第二次执行PMU_EnterSTANDBYMode();后,马上触发系统复位
- 排查发现,是因为复位重启后,程序遗漏清除PMU_CSTS的WUE** 唤醒事件产生标志,导致再次进standby低功耗后,马上被唤醒
- WKUP引脚上的上升沿事件,还有RTC闹钟事件,都会让 WUE** 置位
PS:注意是WKUP引脚的上升沿!
PS:STOP停止模式,会把HSI和HSE都关闭,所以从stop mode唤醒后需要重新初始化系统时钟(PLL模块重新进行倍频)
|