ESP8266乐鑫版本的(支持云端升级 (Boot 模式)烧写方法,(V1.5.4官方介绍如下)(BOOT模式)

时间:2022-02-28 22:46:59

硬件平台:

nodeMCU devkit核心板,带ch340g,应该是仿造的,官方是cp2102驱动,安信可科技有连接https://wiki.ai-thinker.com/esp8266/boards/nodemcu

编译环境:安装安信可一体化开发环境

AiThinker_IDE.exe 是安信可科技为方便广大用户而推出的基于 Windows + Cygwin + Eclipse + GCC 的综合 IDE 环境

烧写方式需要进行部分的修改,主要是删除部分makdfile以免发生冲突。

boot模式和非boot模式都要修改。

下图是乐鑫原厂的sdk目录,安信可的sdk同样适用。

ESP8266乐鑫版本的(支持云端升级 (Boot 模式)烧写方法,(V1.5.4官方介绍如下)(BOOT模式)

乐鑫修改版

特性:

 在乐鑫官方sdk上做出一些改动,使其下载后可以即编即用

下载地址: ESP8266_NONOS_SDK_V1.5.4 ESP8266_RTOS_SDK_V1.5.0

更新时间:2016年12月12日

更新说明: 可以使用安信可IDE直接导入编译

(V1.5.4官方介绍如下)(BOOT模式)下载https://wiki.ai-thinker.com/esp8266/sdk

同时参考https://blog.csdn.net/ReCclay/article/details/79314165

烧写参考https://wiki.ai-thinker.com/esp_download文档

在makefile中修改如下boot和SPI_SIZE_MAP

BOOT?=new
APP?=1
SPI_SPEED?=40
SPI_MODE?=QIO
SPI_SIZE_MAP?=2

  ifeq ($(SPI_SIZE_MAP), 2)
size_map = 2
flash = 1024
ifeq ($(app), 2)
addr = 0x81000
endif

  

ifeq ($(BOOT), new)
boot = new
else
ifeq ($(BOOT), old)
boot = old
else
boot = none
endif
endif ifeq ($(APP), 1)
app = 1
else
ifeq ($(APP), 2)
app = 2
else
app = 0
endif
endif

  烧写工具配置如下,地址不能写错了,和不带boot是不一样的。

ESP8266乐鑫版本的(支持云端升级 (Boot 模式)烧写方法,(V1.5.4官方介绍如下)(BOOT模式)

烧写之前,需把串口助手的停止,否则无法下载。烧写完成后,ret复位得到下载的结果:

 ets Jan  8 2013,rst cause:2, boot mode:(3,6)

load 0x40100000, len 816, room 16
tail 0
chksum 0x8d
load 0x3ffe8000, len 788, room 8
tail 12
chksum 0xcf
ho 0 tail 12 room 4
load 0x3ffe8314, len 288, room 12
tail 4
chksum 0xcf
csum 0xcf 2nd boot version : 1.2
SPI Speed : 40MHz
SPI Mode : DIO
SPI Flash Size : 32Mbit
jump to run user1 get flash_addr error!
user code done ets Jan 8 2013,rst cause:2, boot mode:(3,7) load 0x40100000, len 816, room 16
tail 0
chksum 0x8d
load 0x3ffe8000, len 788, room 8
tail 12
chksum 0xcf
ho 0 tail 12 room 4
load 0x3ffe8314, len 288, room 12
tail 4
chksum 0xcf
csum 0xcf 2nd boot version : 1.2
SPI Speed : 40MHz
SPI Mode : DIO
SPI Flash Size : 32Mbit
jump to run user1 rf[112] : 03
rf[113] : 00
rf[114] : 01 SDK ver: 1.5.4(baaeaebb) compiled @ May 17 2016 19:23:54
phy ver: 972, pp ver: 10.1 SDK version:1.5.4(baaeaebb)
hello esp8266 liming
mode : softAP(be:dd:c2:47:65:37)
add if1
dhcp server start:(ip:192.168.4.1,mask:255.255.255.0,gw:192.168.4.1)
bcn 100

红色对应os_printf("hello esp8266 liming\n");该语句。

如果改为一下参数:

BOOT?=new
APP?=1
SPI_SPEED?=40
SPI_MODE?=QIO
SPI_SIZE_MAP?=6

则会生成一下结果:

  ESP8266乐鑫版本的(支持云端升级 (Boot 模式)烧写方法,(V1.5.4官方介绍如下)(BOOT模式)

那么烧写的时候如下:boot.bin就是1.5了。

ESP8266乐鑫版本的(支持云端升级 (Boot 模式)烧写方法,(V1.5.4官方介绍如下)(BOOT模式)

最后的结果:

ets Jan  8 2013,rst cause:2, boot mode:(3,6)

load 0x40100000, len 1856, room 16
tail 0
chksum 0x63
load 0x3ffe8000, len 776, room 8
tail 0
chksum 0x02
load 0x3ffe8310, len 552, room 8
tail 0
chksum 0x79
csum 0x79 2nd boot version : 1.5
SPI Speed : 40MHz
SPI Mode : DIO
SPI Flash Size & Map: 32Mbit(512KB+512KB)
jump to run user1 @ 1000 rf[112] : 03
rf[113] : 00
rf[114] : 01 SDK ver: 1.5.4(baaeaebb) compiled @ May 17 2016 19:23:54
phy ver: 972, pp ver: 10.1 SDK version:1.5.4(baaeaebb)
hello esp8266 liming
mode : softAP(be:dd:c2:47:65:37)
add if1
dhcp server start:(ip:192.168.4.1,mask:255.255.255.0,gw:192.168.4.1)
bcn 100