• 用MicroPython开发ESP32-文件传输工具-ampy


    陈拓 2022/08/29-2022/08/29

    1. 简介

    在《用MicroPython开发ESP32-用Thonny烧写固件》

    https://blog.csdn.net/chentuo2000/article/details/125246446?spm=1001.2014.3001.5501

    和《用MicroPython开发ESP32-用Thonny写程序》

    https://blog.csdn.net/chentuo2000/article/details/125242702?spm=1001.2014.3001.5501

    两篇文章中我们初学习了怎样用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

     

    连接超时,解决方法:

    https://blog.csdn.net/weixin_45912366/article/details/125068849

    此时可以修改镜像源,使用清华大学开源软件镜像站进行安装。

    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写程序》

    https://blog.csdn.net/chentuo2000/article/details/125242702?spm=1001.2014.3001.5501

    一文中我们已经知道了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

  • 相关阅读:
    企业如何低成本建立工业互联网平台?
    (图论) 连通分量(模板) + 强连通分量(模板)
    什么是HTTP状态码?常见的HTTP状态码有哪些?
    数据读写:Python读写CSV文件
    知识联合——函数指针数组
    《软件方法》第1章2023版连载(07)UML的历史和现状
    动态规划算法学习二:最长公共子序列
    问题 B: Ella的密码——map
    muduo源码剖析之EventLoopThreadPool
    想要精通算法和SQL的成长之路 - 最长回文子串
  • 原文地址:https://blog.csdn.net/chentuo2000/article/details/126588995