ESP8266烧写micropython固件
0 背景
今天翻出了很久没有使用的ESP8266开发板,还记得是当时同学做IOT开发的时候推荐给我的,可以基于micropython进行开发,就顺便入手了几块。然后试了网上很多先用esptool擦除固件,再用esp flasher download tool完成烧写的教程,但是一直出现Error。后来使用nodemcu-flasher完成烧写,而且过程简单。
1 前提准备
环境:Windows 10
下载CH340驱动:http://www.pc6.com/softview/SoftView_198175.html
下载micropython固件:https://micropython.org/download/#esp8266
下载烧写工具:https://github.com/nodemcu/nodemcu-flasher
下载putty:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
下载webrepl客户端:https://github.com/micropython/webrepl
2 烧写固件
1.打开nodemcu-flasher,在Config选项中添加指定路径的micropython固件(.bin文件)。
2.在Advanced选项中修改如下参数。
3. 在Operation选项中选择COM端口后点击FLASH即可完成固件的烧写。
3 使用PuTTY连接WIFI
1.打开PuTTY,设置端口和波特率(115200)后打开端口。
2.在对话框中依次输入下面的命令,即可连接WIFI。
import network
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.scan() # Scan for available access points
sta_if.connect("<AP_name>", "<password>") # Connect to an AP
sta_if.isconnected() # Check for successful connection
结果如下:
4 使用webrepl上传文件
断开PuTTY中打开的端口后,打开webrepl客户端,选择对应的端口,点击open。在对话框中输入import webrepl_setup以进行配置webrepl:
import webrepl_setup
接下来选择Enable it running on boot,然后连续输入两次密码完成配置。
在此之后,按下ESP8266开发板上的复位键后重新在webrepl客户端中打开端口,输入下面的命令启动webrepl并查看ESP8266的IP地址。
import webrepl
webrepl.start()
import network
sta_if = network.WLAN(network.STA_IF)
sta_if.ifconfig()
sta_if.ifconfig返回的元祖的第一个参数就是分配给ESP8266的IP地址。
打开webrepl的在线客户端,将IP地址修改为在上一步获得的IP地址“ws://192.168.0.46:8266/”后点击连接,出现[welcome to micropython]后在password中输入密码后,出现[WebREPL connected],表示成功连上开发板,接下来就可以摆脱那个特别容易闪退的本地客户端,通过这个在线客户端上传文件了。
5 设置上电自动连接WIFI
micropython初始化后会自动执行main,py文件,因此我们只需要在其中设置上电自启动即可,main.py参考程序如下,具体的语法规则可以参考micropython官网的参考手册。
6 参考文献
https://blog.****.net/yannanxiu/article/details/53966374