Alios things 写入 ESP8266 串口调通
ESP8266
鑫乐的一款WIFI芯片,体积小巧。支持串口通信。又有名称为ESP8266EX。
AliOs Things
阿里提供的免费物联网操作做系统。
ESP8266写入系统
注意芯片的内存大小,笔者内存为1MB因此系统的写入地址为:
bin文件 | 内存地址 | |
---|---|---|
boot_v1.7_921600.bin | 0x00000 | |
esp_init_data_default.bin | 0xFC000 | |
blank.bin | 0xFE000 | |
@TARGET@.bin | 0x01000 |
esp8266.json配置文件如下:
{
"cmd": [
"esptool.py",
"--chip",
"esp8266",
"--port",
"@PORT@",
"--baud",
"115200",
"write_flash",
"--flash_mode",
"dout",
"--flash_size",
"4MB",
"0x00000",
"@AOSROOT@/platform/mcu/esp8266/bsp/boot_v1.7_921600.bin",
"0xFC000",
"@AOSROOT@/platform/mcu/esp8266/bsp/esp_init_data_default.bin",
"0xFE000",
"@AOSROOT@/platform/mcu/esp8266/bsp/blank.bin",
"0x01000",
"@AOSROOT@/out/@TARGET@/binary/@TARGET@.bin"
]
}
115200 的写入波特率可以任意设置,这个决定了写入速度。
ESP8266写入后串口连接乱码
这个一定是Esp8266在编译前源代码指定的默认波特率问题,默认波特率为74880,很不幸的是Mac下的CoolTerm不支持这个波特率。我们就需要调整它的波特率,有两种方式:
- 1、在当前的程序中修改波特率,见uart的example项目。
- 2、在mcu的sdk中修改默认波特率(笔者采用此方式)。
文件路径为: platform/mcu/esp8266/bsp/driver/uart.c
最后新增一行代码:
UART_SetBaudrate(UART0,115200);
重新编译程序,写入ESP8266,复位芯片即可。
CoolTerm 串口通信效果
硬件如图: