在ESP32低功耗设计中,RTC内存(RTC_SLOW_MEM)与NVS分区用途截然不同。RTC内存由RTC域供电,在Deep-sleep和Light-sleep下数据不丢失,访问速度快(纳秒级),适合存储高频更新的关键状态,如唤醒计数器、传感器校准偏移量、当前任务断点(如Wi-Fi重连次数)、以及需要快速恢复的运行时变量。但容量有限(约8KB),且掉电(如拔电池)会丢失。NVS分区基于Flash,掉电持久,适合存储低频但需长期保存的数据,如Wi-Fi凭据、设备UUID、用户配置、校准参数(如温度补偿系数)、固件版本号。注意:NVS写入有擦写寿命(约10万次),避免频繁写入;且Flash在Deep-sleep下不可访问,需在唤醒后操作。实操建议:将关键运行状态放RTC,将配置和凭据放NVS;若需在Deep-sleep中更新NVS,需先唤醒再写。
mcuku 阿沐 · 2026-08-27