HA 从Power down模式唤醒后,保持RTC时钟的方法分享
-
HA进入Power down模式后被唤醒是从main进入,唤醒以后整个系统执行了重新初始化会带来RTC的重新初始化(给人一种好像RTC寄存器丢失的错觉)。在没有执行重新初始化之前,RTC是会保持之前功能;
解决方法简单来说就是:从RSSR中查询复位源,如果是reset和POR的,该怎么初始化怎么初始化,如果从PD唤醒的,选择不初始化RTC。
感谢大佬提供的思路@ganyongchao下面是验证过程:
使用WKUP引脚从Powerdown模式唤醒观察RTC相关寄存器是否有保持
硬件:云途HA01开发板 EVB176 Rev.B (如果在EVB上面要使用32K晶振需要手动焊接修改电阻,见下图)
软件:SDK 1.3.1 (工程文件见附件)
如果RSSR 的RCU_RSSR_PIN_MASK
被置位选择初始化RTC,否则的话直接RTC_DRV_StartCounter
打印RTC时钟,验证相关寄存器是否保持
如果不加上文提到的判断:
可以观察到RTC时钟未保持
还有什么疏漏的地方,还请大佬们指出
发帖前请查看
帮助没办法联网的电脑使用YCT
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...