ESP32教程:MicroPython支持
本MicroPython教程旨在阐释如何将MicroPython固件烧录到ESP32并使用简单的“Hello World(你好,世界)”程序进行测试。本文旨在阐释如何将MicroPython固件烧录到ESP32并使用简单的“Hello World”程序进行测试。MicroPython是Python 3编程语言的实现,其包含一个Python标准库的小子集,且已经经过优化,可在微控制器上运行。幸运的是,ESP32和ESP8266一样,也有一个MicroPython端口,如此处所示(https://github.com/micropython/micropython-esp32)。虽然我们可以自行构建本项目(此处查看说明:https://github.com/micropython/micropython-esp32/tree/esp32/esp32),但上手MicroPython最简单的方法是下载预构建的固件并将其上传到开发板。本教程将采用此法。本教程制作于Windows系统。使用的是这块ESP32开发板。
所需软件
为适用本教程,需在机器上安装Python。本教程是用Python 2.7创建的,但更高版本的Python也应该可以制作。此外,要用ESP32烧录MicroPython二进制文件还需借助一个名为esptool的软件。本文撰写之际,该软件稳定版为1.x,尚不支持ESP32 。因此无法通过pip或其他Python包管理器安装该软件,需手动完成。因此,必须从此处下载esptool的最新版本(https://github.com/espressif/esptool/releases/)。本教程所用版本为v2.0beta2。esptool源代码下载完毕后,将其解压缩到文件夹。该文件夹内有一个setup.py文件。假设已经安装了Python,则导航到解压后的文件夹并输入以下命令: python setup.py install此操作将在系统上安装esptool。如果你愿意的话,可从该软件的存储库中查看手动安装说明。最后,需要用到MicroPython软件的二进制文件。可从此处获取该文件(https://micropython.org/download/#esp32)。下载并保存在文件夹中,之后会派上用场。
步骤首先,需擦除ESP32的flash。为此只需在命令行中输入以下命令。你需要将“COM5”改为你的ESP32所连接的串行端口。 esptool.py --port COM5 erase_flash然后,使用以下命令将二进制文件上传到ESP32。同样地,你需要将COM5改为你的ESP32串行端口。此外,还需将pathToYourFile/BinaryFile改为你的二进制文件的路径和名称。Windows系统有一个简单的操作技巧,即把文件拖放至命令行。 esptool.py --port COM5 --baud 460800 write_flash --flash_size=detect 0 pathToYourFile/binaryFile之后,你应该可以在ESP32开发板上使用MicroPython了。我们马上来确认一下。
测试安装为测试安装,我们需要一个额外的工具与Python prompt进行交互。虽然其他可建立串行连接的软件也同样适用,但在本教程中我们将选用Putty。你可以在此处下载该软件(https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)。
从上一个链接下载.exe文件后,只需打开它,Putty图形用户界面 (GUI) 就会弹出。在连接类型上选择“串行 (Serial) ”,在串行行上输入ESP32的串口(于我而言是COM5),并将速度设置为115200。参看图1突出显示的配置。
图1 – 使用Putty连接到ESP32 MicroPython prompt。
完成所有配置后,点击打开。如一切配置无误,你现在应该得到一个如图2所示的窗口,且MicroPython prompt可用。
图2 – ESP32 MicroPython prompt。
Hello World程序要完成本教程,我们将打印一条简单的“Hello World”消息。编写以下命令并按回车键: print ("Hello World From ESP32 MicroPython")你应该会得到类似于图3的东西。在示例中,我发送了两次命令。
图3 –ESP32 MicroPython“Hello World”。你现在可以在ESP32上使用Python了。
结 语我要特别感谢ESP32 MicroPython端口背后的团队,我在Github页面上提出请求后他们立即提供了二进制文件。此外,还感谢他们制作了这个人人可用的超棒工具!
注:本文作者是Nuno Santos,他是一位和蔼可亲的电子和计算机工程师,住在葡萄牙里斯本 (Lisbon)。他写了很多有关ESP32、ESP8266的有用的教程和项目。
查看更多ESP32/ESP8266教程和项目,请点击 : ESP32教程 汇总贴 我是小白,刚注册进来学习的。看了楼主的教程,还是想请教一下。
之前买过Nodemcu的开发板(esp8266的),下载装上ESPFlashDownloadTool_v3.6.4,把Nodemcu的开发板烧成micropython固件,一切正常(我的电脑用的是WIN7)。前几天买回Nodemcu的开发板(esp-32s的),到官网上下载了最新的固件,也想刷成micropython,但却死后刷不成!请问是为什么?应该怎么做才能刷好? 名字并不重要 发表于 2019-4-28 13:48
我是小白,刚注册进来学习的。看了楼主的教程,还是想请教一下。
之前买过Nodemcu的开发板(esp8266的), ...
一般官方都可以刷成功,你的开发板是在哪里吗的?是不是开发板的问题,建议你问一下购买商家,让他提供一下售后 淘宝买的,问过卖家,他也不知道(只卖产品,没有技术支持)。昨天又到淘宝里找了另一家买一块类似的,看看买回来对比一下,能不能刷固件 最后一步配置putty的时候出错了,没有出现预期的窗口。 能提供下二进制文件吗 拷入的速度是460800,通信速度是115200,这是怎么做到的 按照操作出现:
rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
flash read err, 1000
ets_main.c 371
如何解决呢?
二进制在哪呢?不清楚啊
页:
[1]