ESP8266的下载方式解析

SDK中Makefile文件关于下载部分

BOOT?=none
APP?=2
SPI_SPEED?=40
SPI_MODE?=QIO
SPI_SIZE_MAP?=0

# =none - 不使用boot
# =old - 使用老版本的boot_v1.1+
# =new - 使用新版本的boot_v1.2+
BOOT?=none

# =0 - 不使用远程升级FOTA
# =1 - 使用FOTA,生成user1...bin
# =2 - 使用FOTA,生成user2...bin
APP?=0

# SPI速率和模式,一般不用改动
SPI_SPEED?=40
SPI_MODE?=QIO

# SPI_SIZE_MAP flash映射方式
# 4MB Flash使用 SPI_SIZE_MAP?=4
SPI_SIZE_MAP?=4
0对应flash512 1对应flash256 2对应flash1024 3对应flash2048 4对应flash4096 5对应flash2048  6对应flash4096 

硬件连接

ESP8266的下载方式解析_第1张图片

如何确保 ESP8266 模组正确的进入了下载模式:

  1. 首先确保模组可以正常运行工作,发送 AT 指令可以有回复 AT OK(即确保电源和串口连接正常);
  2. 拉低 GPIO0,打开串口工具,在波特率74880下观察模组的启动或复位后的打印信息;
  3. 若出现以下红色字符则认为模组已经进入了下载模式(后面的7数值不用理会),可以去正常进行下载。
  4. ESP8266的下载方式解析_第2张图片

ESP8266 Flash 地址配置

  1. 烧录时的配置选项与编译时的配置是相关的, 编译SDK时,控制台会提示bin文件的烧录地址,配置不同,烧录的地址和需要的文件也不同
  2. 按照烧录文件的不同分为两种情况: 支持云端升级 和 不支持云端升级 flash容量的不同,我们还要调整bin文件烧录的地址
  3. 支持云端升级的固件,在 flash 中会分为 2 个区,一个用来运行程序,一个用来保存升级固件, 当运行 user1 时升级,程序会下载固件到 user2,下载完毕后,下次启动时从 user2 启动,依次替换,实现云端升级。
  4. user2 仅用作升级使用,用户烧录时无需下载 user2.bin,此处仅为说明 user2 的存放位置

注意1:乐鑫在不同版本的 SDK 中有可能会改变这些烧录位置,以下说明仅为参考,建议以开发时的 Console 输出信息为准。
注意2:合并后的固件内已经包含了地址信息,只需烧写到 0x0 地址即可。
ESP8266的下载方式解析_第3张图片

你可能感兴趣的:(ESP8266)