Python 是目前最流行的编程语言之一,其语法接近自然语言,使得完全没有编程经验的人也能轻松上手,降低了学习难度,并能迅速开发出自己的创意产品。同时,对于那些熟悉 C/C++ 的嵌入式软件开发人员来说,Python 可以提高开发效率,专注于应用层的开发,从而缩短交付周期。
ESP32_devkit_v1 开发板基于 ESP-WROOM-32 模组设计,集成了 Wi-Fi、Bluetooth等多种功能,具备强大的性能和广泛的应用场景,是当今主流的物联网开发板之一。MicroPython 是 Python 3 的精简高效实现,包含了 Python 标准库的一小部分,并经过优化以适应微控制器和资源受限的环境。
ESP32 与 MicroPython 的结合提供了一个性价比极高的学习和开发平台。
一、ESP32 硬件平台
ESP32硬件采用的是王铭东老师的ESP32开发板。B站王铭东micropython esp32开发板学习入门套件蓝牙wifi远程控制-淘宝网 (taobao.com)
1、ESP32电路图
PCB原理图
https://doc.itprojects.cn/0006.zhishi.esp32/01.download/esp32_Schematic%20Prints.pdf
二、刷写 ESP32 的MicroPython固件
这里只介绍串口方式刷写固件。官方链接:MicroPython - Python for microcontrollers
1、在micropython官网下载固件
在官网中找到最新的固件,如下图所示:v1.23.0(2024-06-02).bin
,下载本固定文件。
2、安装esptool工具
官网文档:Esptool.py Documentation - ESP32 - — esptool.py latest documentation
我们采用的是WIN11系统,这里通过cmd安装esptool工具,使用命令:pip install esptool
3、开发板连接电脑
将开发板通过USB线连接上电脑,连接成功之后,电脑会出现串口设备号,如下图所示。
4、刷写固件
(1)连接ESP32
在windows系统中,使用命令esptool -p PORT flash_id
连接设备。其中PORT为自己电脑显示出来的设备端口号。因为电脑识别出来的USB设备为COM6
所以,这里的PORT填写COM6
。
(2)擦除固件
如果你是第一次把MicroPython放在你的板上,那么你应该首先使用以下命令来擦除整个flash:esptool --chip esp32 erase_flash
。
(3)下载固件
在固件库的目录下,打开cmd,注意:使用英文路径,免出错。
使用命令:
esptool --chip esp32 --port COM6 --baud 460800 write_flash -z 0x1000 ESP32_GENERIC-20240602-v1.23.0.bin
其中COM6
为自己电脑上的显示的端口号,ESP32_GENERIC-20240602-v1.23.0.bin
为固件名称,按照实际情况修改。
快速指令汇总
- 连接ESP32
esptool -p
COM6
flash_id
- 擦除 ESP32 flash
esptool --chip esp32 erase_flash
- 刷写固件
esptool --chip esp32 --port
COM6
--baud 460800 write_flash -z 0x1000
ESP32_GENERIC-20240602-v1.23.0.bin
三、ESP32的PyCharm开发环境搭建
1、PyCharm安装
网上PyCharm软件安装的资料很多,这里就不介绍了。
2、安装MicroPython插件
打开pycharm,在"Plugins"查找MicroPython插件并下载安装。
3、配置工作环境
File->Setting打开配置文件,将MicroPython插件使能,并将Device type类型设置为Pyboard,设备地址填写设备的端口号地址,我的电脑为COM6故设置为COM6,当然也可以使用Detect按键自动寻找设备。
4、程序下载调试
为了方便后面ESP32代码的运行测试,整个ESP32项目程序中都没有 main.py 文件,如果有main.py文件,后面别的例程将无法运行。
(1)修改 pyboard.py 程序
程序下载到ESP32开发板时,程序可能无法下载到ESP32开发板中,要修改 pyboard.py 程序,增加 time.sleep(2) 延时。
找到 pyboard.py文件
在188行前,增加延时2S
(2)运行配置
选择要下载到 ESP32 开发板 flash 上的文件路径
- 点击右上角的运行配置(Run/Debug Configurations)
- 新增"MicroPython"配置
- Name: 用于显示在右上角执行下来列表中,大家随便填
- Path:选择要上传文件的完整路径
- Open MicroPython REPL on success:建议勾选,用于上传完成后跳转到MicroPython
(3)PyCharm中运行测试程序
- 下载程序到 ESP32
- import 导入文件运行
到MicroPython界面中,使用import导入文件,并执行(所以python代码中不要判断是否main方法,否则无法执行)
四、总结
推荐大家最好去找官方文档学习,这样效率更高。
- MicroPyton官方文档(需要科学上网):
Quick reference for the ESP32 — MicroPython latest documentation
- it项目网