ESP8266 WIFI 模块烧写升级固件
http://cckyz.blog.163.com/blog/static/13706603520150282355569/
当想马上上手ESP8266 WIFI 模块烧写时,你肯定被一大堆帮助文件弄个头痛不已.再此晒出我如何烧写固件,希望能达到帮你镇痛的作用. :)
烧写步骤
1,将GPIO0 通过 1K 电阻 连接到 GND
2,将CH_PD 连接到 VCC
3,连接UTXD 与 URXD 到 USB转串口模块的相应引脚
4,上电
通过以下程序烧写固件
目标串口设置为你USB转串口模块的串口号后,进入配置
设置完毕后回到操作界面,鼠标单击"一键烧写" 按钮,等待进度条走到百分之100就OK了,烧写过程中可以查看日志.
断电后,让GPIO0保持悬空状态,EPS8266模块上电,可以通过AT+GMR查询当前固件版本号.
http://bbs.elecfans.com/jishu_531101_1_1.html
如何把你的ESP8266-01变成nodemcu Lua
开始玩ESP8266就是看中它的性价比,因为想做一些物联网应用开发,主要的就是一些开关量和低速字节数据传送,所以wifi转串口模块就够了,就买了一个ESP8266-01模块,开始一直使用AT指令调试,使用STM32发送AT指令,玩了一段时间,发现要进行网络交互还是很难的,尤其是要接入云端需要很多网络知识,所以最终也没搞出什么名堂。 ESP8266-01. {( K o5 z. H0 B9 b# P6 s
后来有一次,偶然看到nodemcu,才明白原来ESP8266不止是一个wifi模块,还是一个功能不错的32位MCU!但是我买的不是nodemcu Lua,我就想能不能直接给我的ESP8266-01刷上nodemcu的固件呢?结果证明:可以!很庆幸ESP8266-01上还引出了GPIO0和GPIO2两个引脚!因为这样就可以直接使用Lua脚本把ESP8266-01当做一个MCU来开发了!而不仅仅是一个wifi转串口模块了!
下面是我的移植过程: ! y# A3 N7 H6 x2 s, p
硬件:ESP8266-01+USB转串口模块(其他的板载模块也可以用,跳线即可,即能让ESP8266-01和PC通讯即可),然后再在GPIO2管脚接一个发光二极管+1K电阻到GND,测试使用。
1、首先准备下载ESP8266固件烧写工具,我使用的是“FLASH_DOWNLOAD_TOOLS_v2.4_150924 ”( 这边网络不太好,等回头我再把后面需要的软件都上传上来 )。
软件启动后,界面是下面这样的,配置信息都是根据ESP8266-01参数配置的,其他型号模块请参考具体手册配置,尤其是Flash大小那一项,不要随便乱选!
; y' X8 c8 v: ? T# f
2、下载固件,我使用的是nodemcu论坛上提供的最新的一款固件,名称如上图所示,链接:https://github.com/nodemcu/nodem ... /0.9.6-dev_20150704
官方给了4种不同的固件,根据需要烧写一个即可,我选的是第一个,支持浮点数的固件。 - ^, Y) k( ?% c4 O9 u
下载固件的话,烧写工具配置就按上图配置即可,模块接下如下图(注意部分管脚没有标注标号,位置参照其他有标号的管脚):
电阻使用1K即可7 j# Z9 f) @3 H8 x4 N6 L
3、烧写固件完成后,断电重新连接模块,并注意把GPIO0的下拉和GPIO2的上拉取消,CH_PD上拉不要取消! 1 L$ }6 V9 a' j$ Q, s
现在就可以测试下固件是否烧写成功了,需要的工具是Tera Term(后来我试了下,使用普通串口调试助手也是可以的),然后在setup---serial port配置串口参数如下:
然后就可以测试一个hello world输入下面代码:
print("Hello World")
回车 5 q! x2 Z1 q% i5 }0 S
看到回复: % s; N" e' S3 y- w2 P
Hello World
就说明你的固件移植已经成功了! . A- i `+ S( v4 p7 S# K
- X+ y/ P8 }1 j2 s: j$ \
4、下面还要再下载一个工具,是用来编写lua脚本并将脚本写入模块的,工具名称“NodeMCU Studio ”,启动后会提示设置串口参数,设置完成后,界面如下:
左边是我编写的一些lua脚本列表,右上方是lua脚本内容,内容输入: ; i' I ` G/ [, Z
pinx=4;
gpio.mode(pinx,gpio.OUTPUT); 1 v1 [' u1 y6 X" c
for i=1,10 do
gpio.write(pinx,gpio.HIGH); 9 H2 [ Q" V0 p! ?
tmr.delay(200000);
gpio.write(pinx,gpio.LOW);
tmr.delay(200000);
end
9 E3 J5 U" Z% w, {8 y3 X
然后点击Download,等一会再点击Execute,就可以看到GPIO2管脚接的LED会闪烁10次! 1 i( n/ H3 y4 v1 o6 S7 O
关于lua脚本的部分我现在也刚开始学习,不过论坛有很多参考文件和API函数说明,唯一不太好的地方是,那个论坛的人不知道怎么回事,求助都很少有人搭理你…… + r" q7 B& O; w1 }; M
不过大家有问题可以去搜下贴,很多问题还有很有帮助的,关于ESP8266-01这块的nodemcu移植问题,可以在下面跟帖回复,我一定会答复的!