介绍
在使用 ESP32 系列芯片(如 ESP32、ESP32-C3、ESP32-S3)开发某些对启动时延比较严格的产品来说,优化系统启动时间将改善产品用户体验,通常最低可以将系统启动时间优化到几十毫秒。例如:智能灯产品,对时延较为敏感,优化系统启动时间可以让用户无法感知到智能灯重启。
优化措施
以下优化选项均可在 ESP-IDF v4.4 的 menuconfig 中找到,如果没有找到,请同步您的 ESP-IDF 版本。
1. 取消二级 bootloader 的 log 打印
Bootloader config -> Bootloader log -> No output
2. 跳过固件检查
Bootloader config -> Skip image validation when exiting deep sleep
Bootloader config -> Skip image validation from power on reset (READ HELP FIRST)
Bootloader config -> Skip image validation always (READ HELP FIRST)
3. 取消应用固件的 log 打印
Component config -> Log output -> No output
4. 修改 SPI flash 的 SPI 模式参数
Serial flasher config -> Flash SPI mode -> QIO
5. 修改 FreeRTOS 的 Tick 参数
Component config -> FreeRTOS -> Tick Rata (HZ) -> 1000
如果还需要在上电后快速使用 Wi-Fi,则可以进一步调整以下 menuconfig 选项:
6. 保存之前从 DHCP 服务器获取的DHCP 信息
Component config -> LWIP -> DHCP -> Restore last IP obtained from DHCP server
7. 关掉 Wi-Fi AMDPU RX
Component config -> Wi-Fi -> DHCP -> close Wi-Fi AMDPU RX
8. 如果没有使用 IPV6,可以取消使能 IPV6
Component config -> LWIP -> Enable IPV6
Notes:
优化后,需重新编译烧写固件。
本文详细介绍如何通过配置ESP-IDFv4.4的menuconfig选项来优化ESP32系列芯片的启动时间,包括取消log打印、跳过固件检查、修改SPI模式参数等措施,以减少启动时延,提升用户体验。
1310

被折叠的 条评论
为什么被折叠?



