瘦网虫 发表于 2016-12-29 16:37:20

如何给安信可A20模块刷Nodemcu固件

本帖最后由 瘦网虫 于 2017-3-8 10:14 编辑

感谢安信可给我们提供了这么好玩的模块,做为业余玩家也能低成本玩高大上的模块。
感谢NodeMcu团队给我们提供了这么好的开发平台。
友情感谢北京乐为物联www.lewei50.com

下面所有操作都是针对官方提供的A20开发板,其它板卡、模块请自行参考后摸索。
下图是官方文档中给的示意图:
https://img.alicdn.com/imgextra/i3/882680026/TB2jjXSXR8kpuFjSspeXXc7IpXa_!!882680026.png

下图是实际拿到手的模块的图:


对于官方提供的模块,我们以usb插口方向为“右”,2个天线接口为“下”进行描述。下面的所有拨码开关序号描述,都以我实际拿到的板子进行描述。

可以看到实际拿到手的模块的拨码开关与上图是正好相反的:右侧为“ON”,从上到下为1-6,希望不影响你的设备调试。图中我的拨码开关设置为1、3拨到右侧,其它拨到左侧(理论上不影响刷机)

接线:
1,        A20的USB接口仅供电,不提供通讯的,所以需要外接一个usb转ttl的模块。将转接模块的tx接到A20模块的WRXD,rx接到A20模块的WTXD,GND接A20模块的GND。(我的usb转ttl模块的tx和rx是反的,实际接线以你自己手上模块为准)
2,        A20的WIO0(上图的左起第3个引脚)接GND(刚好A20有2个GND,happy!)
3,        所有拨码开关拨到左。


此时的A20的wifi模块进入了“刷机模式”

刷NodeMcu固件:
按照nodemcu提供的刷机方法:
https://nodemcu.readthedocs.io/en/dev/en/flash/
安装好python脚本后,用usb线给模块上电,然后运行如下的命令:
esptool.py --port <serial-port> write_flash -fm dout -fs 8m 0x00000 <NodeMCU firmware>
相对应我的环境与设备,此命令为:
esptool.py --baud 345600 --port COM9 write_flash -fm dout -fs 8m 0x00000 nodemcu_float.bin
看到运行窗口里提示擦除flash和写入进度到100%后,重启,你就拥有了一个NodeMcu支持的A20模块!
注意:刷机时给usb供电后,尽快,记得要尽快运行脚本,这样刷机成功率会高很多。我一般控制在1秒内运行脚本。


如果需要将所有内容,包括固件和代码全部导出:
硬件上,需要先将所有拨码开关拨到左侧,wio0接到gnd,然后重启后,运行
esptool.py --baud 345600 --port COM6 read_flash 0 4194304 nodemcu_8285.bin

系统正常运行时,需要将3,5拨到右,其它拨到左。

4,6拨到右,其它拨到左时,可以使用utxd、urxt引脚与gprs模块使用AT指令集通讯。
3,5拨到右,其它拨到左时,8285模块与gprs模块通讯。

1、2是8285模块的gpio13、15引脚是否与板子上实际引脚导通的开关

Enjoy it~by瘦网虫 2016/12/29

瘦网虫 发表于 2016-12-29 16:42:38

参考文档:http://frightanic.com/iot/nodemcu-esp8285-perfect-match/
页: [1]
查看完整版本: 如何给安信可A20模块刷Nodemcu固件