ESP32 / ESP8266 MicroPython教程:从文件系统运行脚本

上一篇:ESP32 MicroPython教程:使用SHA-256

本文的目的是解释如何从 micropython 的文件系统运行脚本。这在 esp32 和 esp8266 上都进行了测试。

介绍

本 esp32/esp8266 micropython 教程的目的是解释如何从 micropython 的文件系统运行脚本。这在 esp32 和esp8266上都进行了测试。此处显示的打印件取自使用esp32执行的测试。
请注意, 这将不同于前面的教程, 我们在 esp32 中执行的 micropython 上从计算机上运行脚本。在这种情况下, 脚本将位于 micropython 的文件系统中。
当然, 这对我们能够执行 python 代码非常有用, 而无需在提示上重复命令。
本教程假定以前安装了对所使用设备的 micropython 支持 (esp32 和/或 esp8266), 以及以前在主机上安装的 python 和ampy 。此处显示的所有过程都在 windows 8 上进行了测试。
步骤
首先,创建一个MicroPython脚本并上传到我们的ESP设备。该脚本很简单,我们只需创建一个echo函数来接收一些充当输入参数的内容并将其打印出来。
我们还将打印一条简单的消息,以表明文件定义的函数和Python中的其他函数均可正常调用。文件脚本如下所示。

def echo(content):

print (content)

print(“Running a script from the file system!”)

echo(“Invoking a function”)

以.py为扩展名将文件保存在你选择的目录中。你可以依你所好为其命名,但在本教程中,我们将其命名为script.py
现在,通过ampy将文件上传到ESP8266 / ESP32。要完成此步骤,只需打开命令行,导航到文件所在的文件夹,然后点击如下所示的命令。欲详细了解如何使用ampy上传文件,请参阅此帖。

ampy --port COM5 put script.py

请注意,你需要将COM5替换为你设备所在的串行端口。此外,如果你使用的是别的文件名,那么不要忘了做相应更改。预期结果如图1所示。

在这里插入图片描述

图1 – 用ampy上传脚本文件

现在,我们需要连接到MicroPython提示符来发送一些命令。我使用的是Putty,但你可以选用其他软件。建立连接后,我们将确认文件系统中存有该文件。

import os

os.listdir()

不出所料,script.py已存入文件系统,如图2所示。

在这里插入图片描述

图2 – 列出文件系统当前目录中的文件。

最后,直接导入脚本即可使其运行,因为该脚本的运行方式与常规的Python模块相同。导入脚本后,将执行所有可执行语句并启用已定义的函数。

import script

script.echo(“Running the imported function”)

如图3所示,导入模块后,我们会从先前定义的可执行语句中获取输出结果。另请注意,重复导入不会再次执行这些语句。然后我们可以通过调用filename.functionName来访问文件中已定义的函数。

在这里插入图片描述

图3 – 导入脚本文件。

下一篇:ESP32 / ESP8266 MicroPython:HTTP POST请求

查看更多ESP32/ESP8266教程和项目:
中文版教程 : ESP32教程合集
英文版教程 : ESP32 tutorial合集

猜你喜欢

转载自blog.csdn.net/qq_29338243/article/details/85004189