ESP32 合并bin文件并烧录
合并bin文件
使用platformio 开发的ESP32项目编译后会有多个bin文件可以合并烧录
使用 ESP-IDF 的 idf.py merge-bin 命令,可以方便地将 bootloader、partition table 和应用程序合并为一个单一的二进制文件,以便进行单次生产烧录。在项目根目录下执行以下命令 idf.py merge-bin
执行后,合并好的文件通常会生成在 build 目录下,名为 merged_flash.bin
编译项目:确保项目已成功构建,生成了所有的二进制文件。
以下是使用esp-idf编译,如果使用platformio直接在编辑器中构建即可
idf.py build
执行合并:运行 idf.py merge-bin 命令
df.py merge-bin
结果:此命令会自动将 build/bootloader/bootloader.bin、build/partitiontable/partition-table.bin 和 build/app.bin(以及可能的 otadata.bin)合并为一个文件
更改输出名称:
idf.py merge-bin -o my_final_image.bin
使用 esptool.py 进行合并(推荐)
除了 idf.py,你也可以直接使用底层工具 esptool.py 来合并,这在自动化脚本中更常用:
esptool.py --chip esp32 merge_bin -o merged_flash.bin --flash_mode dio --flash_size 4MB 0x1000 bootloader.bin 0x8000 partitions.bin 0x10000 firmware.bin 0x3d0000 spiffs.bin
通过以上方法生成的合并文件,可以在生产烧录时使用 esptool 或其他烧录软件,只需指定起始地址 0x0 进行一次烧录即可
使用esptool 烧录
查看串口
ls /dev/cu.*
执行烧录
esptool.py -p /dev/cu.usbserial-1430 write_flash 0x00 merged_flash.bin
文档信息
版权声明:可自由转载(请注明转载出处)-非商用-非衍生
发表时间:2026年4月3日 16:12