MicPython
MicroPython是澳大利亚程序员和物理学家Damien George在2013年一次成功的众筹活动后最初创建的。MicroPython 和 CPython 在 Python 3 语法上保持高度的一致性,常用的标准语法命令都已经支持
Python语言有多种实现。如CPython、Jython、PyPy等。可以说MicroPython正是这Python大家族中的一员。但与其他Python成员不同的是,MicroPython更适用于嵌入式系统,如ESP8266、ESP32、Pico树莓派等物联网开发板。CPython是目前最为流行的Python实现,可以说CPython就是标准Python了。
既然有了CPython那为何还要多一个MicroPython呢?
Python与MicroPython所适用的系统在硬件资源和软件环境上差别很大。物联网开发板可供用户使用的的内存只有几Mb。而电脑或手机内存最少也有1Gb,天壤之别。
通常嵌入式开发里最流行的语言是C,学习Python或MicroPython是不是多此一举呢? 咱就玩玩,怎么方便,怎么快乐怎么来!人生苦短,快用python。用这个有啥优势呢
动态开发
使用C语言开发时,需要将写好的程序编译成二进制文件然后上传开发板。如果修改程序内容,则需要再次编译,再次上传。贼麻烦(你要是用过Arduino IDE你就知道,那个编译速度 啧)。而MicroPython是一种动态语言。无需编译就可以直接让开发板运行程序内容。同时,我们在程序执行过程中也可以动态的调整程序参数,十分便于我们调试程序。
OTA开发
所谓OTA就是无需用电脑与开发板联线就可以实现设备固件更新。MicroPython配有webrepl开发环境,便于我们使用WiFi对开发板进行固件更新或修改。wifi一连,啪就上去了,很快啊!
更便捷的文件管理
MicroPython固件一刷,ESP8266就像个一个小型操作系统,文件系统都有了,还要啥自行车。
丰富的开源库让开发更加便捷
和Arduino一样MicroPython也有非常丰富的开源库供我们使用。无论是控制电机、取传感器信息还是使用HTTP协议或MQTT协议、实现物联网操作。这可比用C开发快多了,MicoPython代码跑的可能不如用C写的编译好的二进制快,who care
搭建环境
linux+esp8266+micpython 咱们当然是在linux下整!
第一步:确定端口
确定你的esp8266的端口号
注意这时候还没有将你的esp8266插入电脑
esp8266连入电脑
多了个/dev/ttyUSB0
没错,你的esp8266对应的端口号就它了。
linux一切皆文件,来瞅瞅这个文件的属性,看看我们一会儿有没有权限通过这个文件刷入固件MicoPython固件。
果然没有权限。 自己加!
权限777 加满 能要的俺全要。
不用太担心安全性,等你usb一拔,再插上权限又都没了。ttyUSB0是个临时文件
第二步:下载固件
MicroPython官网 www.micropython.org下载固件
第三步:擦、刷
# 安装工具
pip install esptool
#先擦
~/.local/bin/esptool.py --port /dev/ttyUSB0 erase_flash
#后刷
~/.local/bin/esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_size=detect 0 ./esp8266-20210420-unstable-v1.15.bin
行了,你的esp8266现在就像个小操作系统啦,能解释MicoPython程序了
第四步:开发环境
我们来看看
安装thonny
# Arch 系列
sudo pacman -S thonny
#ubuntu
sudo apt install thonny
打开thonny 工具 > 设置 > 解释器
成了!!!