1. 简介
在《用MicroPython开发ESP32-用Thonny烧写固件》和《用MicroPython开发ESP32-用Thonny写程序》两篇文章中我们初学习了怎样用Thonny在ESP32上烧写MicroPython固件,然后用Thonny为ESP32开发MicroPython程序。
从上面的文章中我们知道,可以用Thonny将Python程序写到ESP32开发板中,Python程序文件其实就是文本文件,只不过扩展名不是.txt而是.py,用任何文本编辑器都可以打开。但是在有些情况下我们还需要将其他格式的文件传到ESP32板子上,比如我们要显示图像时就需要先将图像文件传到ESP32板子上,这时用Thonny是不行的。我们可以借助其他一些辅助工具来实现文件传输。下面我们介绍在Win10上使用工具ampy向ESP32传输文件。
ampy的github仓库:
https://github.com/scientifichackers/ampy
如果github访问太慢可以看gitee仓库:
https://gitee.com/mirrors_scientifichackers/ampy
- ampy简介
Ampy是一个简单的命令行工具,可以通过串口在MicroPython板子上操作文件和运行代码。使用ampy您可以将文件从计算机发送到板子的文件系统,或将文件从板子下载到计算机,也可以将Python脚本发送到要执行的板子上。
请注意,ampy的设计旨在简单,不支持高级交互,如通过Shell或终端向板子发送输入。查看其他MicroPython工具,如rshell或mpfshell,了解与板子的更高级交互。
Ampy可以在Windows、Linux和Mac OSX系统下运行。
2. Win10安装ampy
ampy需要与Python 2.7.x或3.x一起使用,并且可以从Python的包索引轻松安装它。
2.1 安装Python
- 从微软应用商店安装Python
- 安装完成后再命令行窗口进行测试
在开始菜单里也能看到Python的启动图标。
2.2 安装ampy
- 查看Python 包管理工具pip
pip --version
- 用pip安装ampy
pip install adafruit-ampy
连接超时,解决方法:
此时可以修改镜像源,使用清华大学开源软件镜像站进行安装。
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple adafruit-ampy
下载的文件安装在目录
C:\Users\admin\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\Python37\Scripts
测试一下:
C:\Users\admin\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\Python37\Scripts\ampy --help
太不方便了,需要将此目录添加到环境变量的PATH路径中。
- 添加环境变量
修改系统环境变量Path
选择系统环境变量Path,点击“编辑”,在Path变量值的最后打一个分号;然后将下面的路径复制到后面:
C:\Users\admin\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\Python37\Scripts\
确定。
重新开一个命令行窗口,输入:
ampy –help
这样就简单了。
看看帮助,了解一下ampy的功能,下面我们只用到了将文件传送到ESP32板子上的功能.
3. 传送图像文件到ESP32开发板
3.1 查串口号
在《用MicroPython开发ESP32- 用Thonny写程序》
一文中我们已经知道了Win10连接ESP32开发板的串口号:
3.2 向esp32传文件
- 关闭其他占用COM3的应用
如果Thonny开着,先断开它:运行 > 断开。
- 文件路径
我们要传的是一个图像文件test128x160.bmp,全路径:
E:\ct\ESP32+micropython\examples\MicroPython-ST7735-master\test128x160.bmp
- 传文件
ampy --port COM3 put E:\ct\ESP32+micropython\examples\MicroPython-ST7735-master\test128x160.bmp
稍等一会儿,在Thonny中点击STOP按钮回复连接,查看文件:
- 删除文件命令
ampy --port COM3 rm xxx.xxxy