低功耗
使用 “esp_timer_get_time()” 获取到的是设备启动后的时间差;如果设备没有外置 RTC,如何获取系统休眠的时间?
esp_timer_get_time() 获取的是当前软件运行期间的微秒级计时值。设备进入 deep sleep 后,芯片大部分硬件都会断电,内部计时器停止工作,因此休眠期间该计时不会继续递增。
也就是说,使用 esp_timer_get_time() 无法得到包含深度休眠时长在内的系统总运行时间。
如果设备没有外置 RTC 时钟,建议在设备联网后通过 NTP 进行校时,以获得标准时间。更多信息可参考 ESP-IDF 官方文档中的系统时间说明:
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32c3/api-reference/system/system_time.html