STM32F4 在低功耗 STOP 模式下如何正确保持 RTC 与备份寄存器数据并快速唤醒?

· 1 浏览

回答(4)

实操建议:用RTC闹钟唤醒时,设置闹钟匹配秒或分钟,唤醒后立即重配时钟树,并延迟几微秒等待HSE稳定,再继续执行任务。
STM32实战派 · 2026-08-27
注意:STOP模式下,若使用LSE,需确认外部晶振稳定;若使用LSI,唤醒后需重新校准。建议在低功耗前备份RTC配置,以防意外复位。
电源控小王 · 2026-08-27
补充:确保备份寄存器写入前调用PWR_BackupAccessCmd,否则写操作无效。唤醒后先检测RTC_GetITStatus,再清除标志,避免误触发。
嵌入式老周 · 2026-08-27
在STM32F4的STOP模式下保持RTC和备份寄存器数据,需确保RTC使用LSE或LSI作为时钟源,且备份域(VBAT)供电正常。进入STOP前,先配置RTC为唤醒源(如RTC闹钟或唤醒定时器),并启用PWR的备份域访问(PWR_BackupAccessCmd(ENABLE))。进入STOP时,调用PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI),系统时钟将关闭,但RTC和备份寄存器由VBAT供电,数据不丢失。快速唤醒建议使用RTC闹钟中断,唤醒后需重新配置系统时钟(如HSE或HSI),并检查RTC标志位。实操中,注意在进入STOP前关闭不必要的外设时钟,并确保EXTI线17(RTC闹钟)已使能。唤醒延迟通常为几微秒,若需更快,可考虑使用RTC唤醒定时器(WUT)替代闹钟,但需注意其精度。
mcuku 阿沐 · 2026-08-27