问题:
使用开发板:NodeMCU
AliOS Things
使用aos upload <工程名>@esp8266
命令烧录启动后,波特率74880
报错以下信息:
ets Jan 8 2013,rst cause:2, boot mode:(3,7)
load 0x40100000, len 2616, room 16
tail 8
chksum 0xef
load 0x33333333, len 858993459, room 0
解决:
SPI MODE
改为 DOUT
模式。
SPI类型 | 线 | 描述 |
---|---|---|
标准SPI | 3-wire | 标准SPI通常就称SPI,它是一种串行外设接口规范,有4根引脚信号:clk , cs, mosi, miso |
Dual SPI | 4-wire | 只针对SPI Flash 外设。 对于SPI Flash,全双工并不常用,因此扩展了mosi和miso的用法,让它们工作在半双工,用以加倍数据传输。 可以发送一个命令字节进入dual mode,这样mosi变成SIO0(serial io 0),mosi变成SIO1(serial io 1),这样一个时钟周期内就能传输2个bit数据,加倍了数据传输。 |
Qual SPI | 6-wire | 只针对SPI Flash 外设。Qual SPI Flash增加了两根I/O线(SIO2,SIO3),目的是一个时钟内传输4个bit |
修改烧录配置文件:build/site_scons/upload/esp8266.json
,增加烧录模式:
修改前:
{
"cmd": [
{
"Linux32": "esptool.py",
"Linux64": "esptool.py",
"OSX": "esptool.py",
"Win32": "esptool.exe"
},
"--chip",
"esp8266",
"--port",
"@PORT@",
"--baud",
"921600",
"write_flash",
"--flash_size",
"detect",
"0x0",
"@AOSROOT@/platform/mcu/esp8266/bsp/boot_v1.7_921600.bin",
"0x3fc000",
"@AOSROOT@/platform/mcu/esp8266/bsp/esp_init_data_default.bin",
"0x3fe000",
"@AOSROOT@/platform/mcu/esp8266/bsp/blank.bin",
"0x1000",
"@AOSROOT@/out/@TARGET@/binary/@TARGET@.bin"
]
}
修改后:
{
"cmd": [
{
"Linux32": "esptool.py",
"Linux64": "esptool.py",
"OSX": "esptool.py",
"Win32": "esptool.exe"
},
"--chip",
"esp8266",
"--port",
"@PORT@",
"--baud",
"921600",
"write_flash",
"--flash_mode",
"dout",
"--flash_size",
"detect",
"0x0",
"@AOSROOT@/platform/mcu/esp8266/bsp/boot_v1.7_921600.bin",
"0x3fc000",
"@AOSROOT@/platform/mcu/esp8266/bsp/esp_init_data_default.bin",
"0x3fe000",
"@AOSROOT@/platform/mcu/esp8266/bsp/blank.bin",
"0x1000",
"@AOSROOT@/out/@TARGET@/binary/@TARGET@.bin"
]
}