小智表情扩容6M!ESP32S3调整分区,塞满高清图不卡顿

可以上传更多的表情素材图片

1、原先的8MB (唤醒词、字体、图片) 改成16MB

# ESP-IDF Partition Table# Name,   Type, SubType, Offset,  Size, Flagsnvs,      data, nvs,     0x9000,    0x4000,otadata,  data, ota,     0xd000,    0x2000,phy_init, data, phy,     0xf000,    0x1000,ota_0,    app,  ota_0,   0x20000,   0x3f0000,ota_1,    app,  ota_1,   ,          0x3f0000,assets,   data, spiffs,  0x800000,  8M

2、修改后的

# ESP-IDF Partition Table# Name,   Type, SubType, Offset,  Size, Flagsnvs,      data, nvs,     0x9000,    0x4000,otadata,  data, ota,     0xd000,    0x2000,phy_init, data, phy,     0xf000,    0x1000,ota_0,    app,  ota_0,   0x20000,   0x400000assets,   data, spiffs,  0x420000,  0xBE0000


这个分区表是针对具有 16MB 闪存的 ESP32-S3 芯片的典型配置。

  • nvs (16KB) – 非易失性存储

    • 作用:用于存储设备运行时的关键数据和系统参数,例如 Wi-Fi 配对信息、蓝牙配置、设备密钥和其他由应用程序创建的键值对数据。

    • 特点:数据在电源关闭后不会丢失,被系统核心和应用程序频繁访问。

  • otadata (8KB) – OTA 数据

    • 作用:专门用于存储 空中升级 相关的数据。它内部有一个标志,指示当前设备正在运行哪个固件镜像(是从 ota_0 启动还是从 ota_1 启动)。

    • 特点:当执行 OTA 更新时,引导程序会查询这个分区来决定下一次启动哪个应用程序。

  • phy_init (4KB) – PHY 初始化数据

    • 作用:用于存储射频的物理层初始化数据。这些数据是在芯片生产测试中通过射频校准生成的,用于确保 Wi-Fi 和蓝牙的无线通信性能达到最佳状态。

    • 特点:通常用户不需要修改这个分区的内容。

  • ota_0 (4MB) 与 ota_1 (4MB) – OTA 应用程序槽

    • 当前运行分区:其中一个分区(例如 ota_0)存放着当前正在运行的固件。

    • 更新分区:当进行 OTA 升级时,新的固件会被下载到另一个分区(例如 ota_1)中。更新完成后,otadata 分区中的标志会被修改,指示设备下一次从新的分区(ota_1)启动。

    • 作用:这是实现无缝空中升级 的核心。两个分区大小完全相同,各为 4MB,用于交替存储固件。

    • 特点:这种双分区设计提供了一个“安全回滚”的机制。如果新的固件启动失败,系统可以自动或手动回滚到之前稳定运行的固件分区。

  • assets (8MB) – 资源文件

    • 作用:用于存储应用程序的静态资源文件,例如网页文件(HTML, CSS, JS)、字体、图片、音频文件、配置文件等。在您的用例中,这个分区很可能就是用来存放 WebRadio 项目的相关网页和资源。

    • 特点:这是可供用户自由使用的、容量最大的分区,专为存储大量只读数据而设计。

发表评论