ESP32教程:MicroPython支持-esp文件

本MicroPython教程旨在阐释如何将MicroPython固件烧录到ESP32并使用简单的“Hello World(你好,世界)”程序进行测试。


简介

本文旨在阐释如何将MicroPython固件烧录到ESP32并使用简单的“Hello World”程序进行测试。

MicroPython是Python 3编程语言的实现,其包含一个Python标准库的小子集,且已经经过优化,可在微控制器上运行[1]。幸运的是,ESP32和ESP8266一样,也有一个MicroPython端口,如此处所示。

虽然我们可以自行构建本项目(点击此处查看说明),但上手MicroPython最简单的方法是下载预构建的固件并将其上传到开发板。本教程将采用此法。

本教程制作于Windows系统。使用的是这块ESP32开发板。

所需软件

为适用本教程,需在机器上安装Python。本教程是用Python 2.7创建的,但更高版本的Python也应该可以制作。

此外,要用ESP32烧录MicroPython二进制文件还需借助一个名为esptool的软件。本文撰写之际,该软件稳定版为1.x,尚不支持ESP32 [2]。因此无法通过pip或其他Python包管理器安装该软件,需手动完成。

因此,必须从此处下载esptool的最新版本。本教程所用版本为v2.0beta2。

esptool源代码下载完毕后,将其解压缩到文件夹。该文件夹内有一个setup.py文件。假设已经安装了Python,则导航到解压后的文件夹并输入以下命令:

1 python setup.py install

此操作将在系统上安装esptool。如果你愿意的话,可从该软件的存储库中查看手动安装说明。

最后,需要用到MicroPython软件的二进制文件。可从此处获取该文件。下载并保存在文件夹中,之后会派上用场。

步骤

首先,需擦除ESP32的flash。为此只需在命令行中输入以下命令。你需要将“COM5”改为你的ESP32所连接的串行端口。

1 esptool.py --port COM5 erase_flash

然后,使用以下命令将二进制文件上传到ESP32。同样地,你需要将COM5改为你的ESP32串行端口。此外,还需将pathToYourFile/BinaryFile改为你的二进制文件的路径和名称。Windows系统有一个简单的操作技巧,即把文件拖放至命令行。

1 esptool.py --port COM5 --baud 460800 write_flash --flash_size=detect 0 pathToYourFile/binaryFile

之后,你应该可以在ESP32开发板上使用MicroPython了。我们马上来确认一下。

测试安装

为测试安装,我们需要一个额外的工具与Python prompt进行交互。虽然其他可建立串行连接的软件也同样适用,但在本教程中我们将选用Putty。你可以在此处下载该软件。

从上一个链接下载.exe文件后,只需打开它,Putty图形用户界面 (GUI) 就会弹出。在连接类型上选择“串行 (Serial) ”,在串行行上输入ESP32的串口(于我而言是COM5),并将速度设置为115200。参看图1突出显示的配置。


ESP32教程:MicroPython支持


图1 – 使用Putty连接到ESP32 MicroPython prompt。

完成所有配置后,点击打开。如一切配置无误,你现在应该得到一个如图2所示的窗口,且MicroPython prompt可用。


ESP32教程:MicroPython支持


图2 – ESP32 MicroPython prompt。

Hello World程序

要完成本教程,我们将打印一条简单的“Hello World”消息。编写以下命令并按回车键:

1 print ("Hello World From ESP32 MicroPython")

你应该会得到类似于图3的东西。在示例中,我发送了两次命令。


ESP32教程:MicroPython支持


图3 – ESP32 MicroPython“Hello World”。

你现在可以在ESP32上使用Python了。


结 语

我要特别感谢ESP32 MicroPython端口背后的团队,我在Github页面上提出请求后他们立即提供了二进制文件。此外,还感谢他们制作了这个人人可用的超棒工具!

注:本文作者是Nuno Santos,他是一位和蔼可亲的电子和计算机工程师,住在葡萄牙里斯本 (Lisbon)。

↓↓↓查看更多ESP32/ESP8266教程和项目,请点击拓展链接

推荐阅读