ESP32的RTC内存(RTC_SLOW_MEM)和NVS分区在掉电保持上的核心差异在于供电域和持久性。RTC内存由RTC电源域供电,在Deep-sleep模式下保持数据,但若完全断电(如拔掉电池或VDD_RTC掉电),数据会丢失;它适合保存唤醒后立即需要的临时状态(如唤醒计数器、传感器校准值),访问速度快(无需Flash磨损),但容量有限(约8KB)。NVS分区存储在Flash中,即使完全断电也能持久保存,适合长期配置(如WiFi凭据、用户设置),但写入有擦写寿命(约10万次),且每次写入需经过Flash驱动,功耗较高。选型建议:若需在Deep-sleep期间保持且断电后可丢失,用RTC内存;若需跨断电保存或数据量较大,用NVS。实操中,可将关键唤醒参数放RTC内存,将配置和日志放NVS,并注意在进入Deep-sleep前将RTC内存数据同步到NVS(若需持久化)。
mcuku 阿沐 · 2026-08-27