电子说
什么是MicroPython?
MicroPython和常规Python非常相似,所以如果您已经知道如何用Python编写程序,那么您已经知道如何在MicroPython中编程。
Micropython包含一小部分Python标准库,所以不是每个标准库中的模块可用。但是,MicroPython确实包含访问低级硬件的模块,这意味着有些模块可以轻松地与微控制器上的GPIO进行交互。
MicroPython还带有交互式REPL(读取 - 评估 - 打印循环),这是MicroPython经常被忽视的惊人功能。 REPL允许您连接到微控制器,快速执行代码而无需编译或上传代码。这可以立即反馈您的程序是否按预期工作。
什么是ESP32/ESP8266?
ESP32和ESP8266是低成本的Wi- Fi模块,非常适合DIY物联网(IoT)项目。
两者都带有通用输入/输出引脚(GPIO),并支持各种协议,包括SPI,I2C,UART等。 ESP系列中最具吸引力的部分是它们带有无线网络,将它们与Arduino微控制器相媲美。总而言之,ESP系列允许您以极低的价格使用Wi-Fi轻松远程控制/监控设备。
必需硬件
为此教程,我们将使用NodeMCU 12-E。我们将引用此板及其针对此特定教程的说明。
NodeMCU 12E ESP8266板。
材料
1 x NodeMCU 12E ESP8266主板
1 x USB to Micro USB电缆
如何下载MicroPython固件
在我们将NodeMCU板连接到PC之前,我们需要下载最新的MicroPython固件并将其加载到NodeMCU上。您可以从MicroPython下载页面下载它。
在下载页面上,您将有3个主要选择:
为1024kb及以上模块建立稳定的固件,
每日固件版本为1024kb模块及以上,
每日固件构建512kb模块。
如果这是您第一次使用MicroPython,建议使用稳定的固件版本。如果您是使用MicroPython的高级ESP8266用户,您可以密切关注开发并通过测试每日构建的新功能来帮助项目。
如何将固件加载到NodeMCU上
下载固件后,就可以将其加载到NodeMCU板上了。实现此目的有两个主要步骤:
将NodeMCU置于引导加载程序模式
跨固件复制到NodeMCU
**注意:如果您使用除NodeMCU 12E之外的任何其他类型的电路板,这些步骤高度依赖于特定电路板,您需要参考其文档以获取详细信息。
要将MicroPython固件刷新到NodeMCU上,您可以选择以下任一技术。
初学友好:NodeMCU PyFlasher
一个带有GUI的自包含NodeMCU闪存器,它使用由MarcelStör开发的esptool.py和wxPython(Python GUI库) 。使用适用于Windows(.exe),macOS(.dmg)以及运行Python的任何内容的最新版本。
一旦插入NodeMCU,您现在应该可以选择COM它连接的端口。如果您在此列表中没有看到它,则可能需要下载USB串行驱动程序。一旦驱动程序处于活动状态,您就可以通过在NodeMCU PyFlasher上的下拉列表或设备管理器(在Windows上)中选择它来确定COM端口号。
确定ModeMCU PyFlasher下拉列表中的COM端口号。
选择设备中的COM端口管理员,如果您使用的是Windows。
现在只需从下载位置选择下载的MicroPython固件.bin文件,选择波特率115200(默认为NodeMCU),使用双I/O闪存模式并单击Flash NodeMCU。完成后,您应该看到如下所示的屏幕。
成功完成固件下载后,您将看到的窗口。
高级用户
将MicroPython固件刷新到NodeMCU板上的另一种方法是使用esptool.py(运行于PyFlasher的背景)。下载后,您需要将MicroPython固件.bin移动到与esptool.py相同的目录中,以使命令更容易。
在运行esptool.py之前,您需要确定端口号使用设备管理器的NodeMCU板。现在使用命令提示符或powershell(在PC上安装Python),导航到存储esptool.py的目录并运行命令:
esptool.py --port write_flash -fm 0x00000 .bin
重新创建命令上方的PyFlasher示例将是:
esptool.py --port COM3 write_flash -fm DIO 0x00000 esp8266-20190125-v1.10.bin
如何访问MicroPython REPL提示
如本文开头所述,REPL(读取评估打印循环)是您可以在NodeMCU上访问的交互式MicroPython提示的名称。使用REPL可以大大简化并加快测试代码和运行命令的速度。
虽然您可以通过Wi-Fi(WebREPL)访问REPL,但本文仅介绍如何通过访问REPL来访问REPL。通过UART串口进行有线连接。
要通过USB-serial访问提示,您需要使用终端仿真器程序。 PuTTY是一个开源的SSH和telnet客户端,您可以将其用作终端仿真程序来访问您的NodeMCU REPL,否则,Windows上有TeraTerm,Mac上的内置屏幕程序和Linux都有picocom和minicom。还有许多其他终端程序可以使用,因此请选择您喜欢的。
首次打开PuTTY后,您需要设置设置配置以访问NodeMCU。首先,我们选择串行连接类型。然后,从步骤3开始,我们现在知道NodeMCU板所在的COM端口号(本例中为COM3)。从那里,我们可以设置115200的波特率,我们已准备好连接。这些设置也可以在将来使用时保存。此示例的设置如下所示。
PuTTY配置设置。
连接后,您将看到一个屏幕如下,可以测试你的代码!
一旦你连接了,你就会受到这个屏幕的欢迎。
如何让LED开启
NodeMCU 12E上有连接到GPIO2的板载LED,您可以使用以下代码打开和关闭它:
》》》 import machine
》》》 pin = machine.Pin(2, machine.Pin.OUT)
》》》 pin.on()
》》》 pin.off()
请注意pin.on()可能会关闭LED和pin.off()可能会打开LED(反之亦然),具体取决于LED在电路板上的接线方式。
使LED连接到No的代码deMCU flash。
全部0条评论
快来发表一下你的评论吧 !