回答

收藏

[原创] 9.ESP32-DevkitC教程之ESP FLASH TOOL下载程序

乐鑫ESP32 乐鑫ESP32 7399 人阅读 | 0 人回复 | 2018-01-19

除了用make flash来下载外,ESP官方还推出了一个用来单独烧录固件的工具——ESP FLASH TOOL。这个可以独立下载分区信息、BOOTLOADER、APP,这次就尝试用这个下载程序下载。下载地址为:
http://www.espressif.com/sites/default/files/tools/flash_download_tools_v3.4.9.2_1.zip
1.打开ESP FLASH TOOL工具,选择ESP32



2.由于之前在menuconfig中选择了Singlefactory app, no OTA,所以APP只有一个factory。如果选择了Factoryapp, two OTA definitions,则会有三个:factoryota_0,ota_1
想查看分区表可在Cygwincd到程序目录,输入
  1. Make partition_table
复制代码
即可显示。如果只是Singlefactory app, no OTA,则输出大概是这样的:
  1. # Espressif ESP32 Partition Table
  2. # Name,   Type,    SubType,    Offset,       Size
  3. nvs,          data,    nvs,            0x9000,     0x6000
  4. phy_init,   data,     phy,           0xf000,      0x1000
  5. factory,    app,      factory,       0x10000,   1M
复制代码
只有一个factory,也就是我们编译的程序;
如果选择了Factory app, two OTA definitions,则输出大概是这样的:
  1. # Espressif ESP32 Partition Table
  2. # Name,       Type,         SubType,       Offset,          Size
  3. nvs,              data,          nvs,                0x9000,        0x4000
  4. otadata,       data,          ota,                0xd000,        0x2000
  5. phy_init,       data,          phy,               0xf000,         0x1000
  6. factory,         0,               0,                   0x10000,      1M
  7. ota_0,           0,               ota_0,               ,                 1M
  8. ota_1,           0,               ota_1,               ,                 1M
复制代码
factory估计是工厂烧录程序,即出厂程序;另两个用于存放ota升级的程序区域。每一次ota升级都会轮流存放,即使用ota_0的时候升级下载到ota_1,然后使用ota_1程序,下次升级写入ota_0,依次轮流存放。

3.由于我这次是选择了single factoryapp,no OTA,所以只需要烧录更新之后APP即可。把之前编译好的固件位置填入,在需要APP固件前打钩。



编译好的APP bin一般在程序APP和分区表在目录下的build中,bootloader在build\bootlader。

编译量可查看分区表,经过上面查询,我的factory偏移在0x10000。


4.根据之前menuconfig里面Serial flasher config设定的内容设置SPI速率、SPI模式、FLASH大小。
经过查询原理图,可知晶振为40MHz。

5.最后点击Start开始下载


6.下载成功,重新上电验证程序。

这几个简单的操作就完成了固件的下载了~

6.png (13.39 KB, 下载次数: 61)

6.png
分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条