乐鑫技术交流
直播中

李静

8年用户 1074经验值
私信 关注
[问答]

ESP32S2主断电后RTC能否继续工作?

ESP32S2 , idf V5.12 ;
硬件使用外置 32K晶振, VCC3P3_RTC脚使用独立纽扣电池供电;
已配置 RTC Clock Config 为 ` External 32kHz crystal` , 程序运行后 能正常更新和获取RTC时间。 但每次主电源断电或硬复位芯片后, RTC的时间值被重置。
请问是否硬件上不支持 断电下 保持RTC计时?  还是 软件上需要额外设置?  

回帖(1)

百灵千岛酱

2024-6-5 17:40:30
ESP32S2在主电源断电后,RTC确实可以继续工作,但需要确保硬件和软件配置正确。根据您的描述,您已经使用了外置32K晶振,并为VCC3P3_RTC脚提供了独立纽扣电池供电。这些硬件配置是正确的。

问题可能出在软件配置上。在ESP-IDF V5.12中,您需要确保正确设置了RTC的电源管理。以下是一些建议:

1. 在初始化RTC时,确保调用`rtc_clk_32k_bootstrap_config_t`函数,并设置`slow_clk_src`为`RTC_SLOW_CLK_SRC_EXT_32K_XTAL`,以使用外部32K晶振。

2. 在电源管理配置中,确保调用`esp_sleep_enable_ext0_wakeup`函数,并将`RTC_IO`通道设置为唤醒源。这将允许ESP32S2在主电源断电后,通过RTC_IO通道唤醒并继续运行RTC。

3. 在程序中,确保在主电源断电前保存RTC时间,并在电源恢复后从保存的位置恢复RTC时间。

4. 如果您的程序支持低功耗模式,确保在进入低功耗模式前保存RTC时间,并在唤醒后恢复RTC时间。

5. 检查您的程序中是否有任何可能影响RTC运行的设置或操作,例如修改RTC时钟源或禁用RTC。

如果按照以上建议进行配置和编程,ESP32S2在主电源断电后应该能够继续运行RTC。如果问题仍然存在,请检查硬件连接和电源管理设置,确保没有其他问题影响RTC的正常工作。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分