硬件平台:
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同樣適用。
樂鑫修改版
特性:
在樂鑫官方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是不一樣的。
燒寫之前,需把串口助手的停止,否則無法下載。燒寫完成后,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
則會生成一下結果:
那么燒寫的時候如下:boot.bin就是1.5了。
最后的結果:
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