在ESP32低功耗模式下,ULP协处理器可在主CPU休眠时独立运行,但WiFi连接需保持活跃,这涉及功耗与功能的平衡。实操建议:1)使用ESP32的Modem Sleep模式,主CPU进入Light Sleep,WiFi保持连接但降低功耗(约0.8mA),ULP负责GPIO脉冲计数,通过RTC GPIO(如GPIO4)配置为输入,ULP程序用RTC_CNTL寄存器读取边沿并累加计数,计数结果存入RTC_SLOW_MEM。2)ULP唤醒主CPU的条件可设为计数阈值或超时,唤醒后通过esp_wifi_set_ps(WIFI_PS_MIN_MODEM)保持连接。3)注意ULP时钟源选择(如150kHz RC振荡器),避免影响WiFi时序。若需Deep Sleep,WiFi会断开,必须用ESP-NOW或Beacon监听模式,但无法完全保持连接。建议优先Light Sleep+ULP方案,实测功耗约1.2mA,计数精度可达微秒级。
mcuku 阿沐 · 2026-08-27