之前一直用Arduino,现在来尝试一下Python。

烧录

1. 到官网下载固件

http://www.micropython.org/download

2. 安装esptool工具

请确保有Python环境(Linux或Windows)

pip install esptool

3. 清空Flash

这一步很重要,可以避免很多错误:

esptool.py --port /dev/ttyUSB0 erase_flash (Windows下port为COM口)

4. 下载到ESP8266上

下载前先将GPIO0下拉,进入下载模式:

esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect 0 esp8266-20180511-v1.9.4.bin

有些模块的Flash是512K的,可能无法下载固件,可以通过esptool来查看:

esptool.py --port /dev/ttyUSB0 flash_id

连接WiFi与远程编程

通过串口连接ESP8266,可以看到串口输出:
25_0.PNG
依次输入:

>>> import network
>>> sta_if = network.WLAN(network.STA_IF)
>>> sta_if.active(True)
>>> sta_if.connect("", "") #SSID,PASSWD
>>> sta_if.isconnected()
>>> print("IP:",sta_if.ifconfig()[0])

连接后可以看到模块的IP。
远程编程需要用到webrepl,你可以使用MicroPython的在线客户端,或从Github获取:

  1. Github:https://github.com/micropython/webrepl
  2. 在线客户端:http://micropython.org/webrepl

在使用webrepl前,需要进行配置,在串口输入:

>>> import webrepl_setup #按提示配置

配置完成后再在串口输入下面的代码,来开启:

>>> import webrepl
>>> webrepl.start()

你可以通过webrepl来上传/下载文件。
webrepl的界面:
25_1.PNG

文件系统

输入下面命令查看当前有的文件:

 >>> os.listdir()
 ['boot.py', 'webrepl_cfg.py', 'main.py']
 boot.py main.py前被执行(开发板启动时将执行这个该脚本,它设置了开发板的多个选项参数) | main.py 主程序

查看剩余空间:

>>> import micropython
>>> micropython.mem_info()
stack: 2112 out of 8192
GC: total: 35968, used: 10000, free: 25968
No. of 1-blocks: 44, 2-blocks: 15, max blk sz: 264, max free sz: 1417

文档

http://docs.micropython.org/en/latest/library/index.html#python-standard-libraries-and-micro-libraries

标签: Python, ESP8266, Elec

添加新评论