使用 MicroPython 通过 USB 连接将数据写入 ESP32
Write data to ESP32 over USB connection with MicroPython
我有一个 ESP32 通过 USB 端口连接到电脑。我可以使用 ESP32 使用打印语句通过串行连接发送数据,我需要定期向 ESP32 写入命令。如何在 MicroPython 中读取通过 ESP32 上的 COM 端口传输的内容?我尝试了以下多种变体均未成功:
from machine import UART
uart = UART(115200)
while 1:
if uart.any():
msg = uart.read()
print(msg)
打印仅用于在 REPL 中打印。如果你想通过串口与单片机通信,你必须写入它。
最简单的例子是:
# your imports and initialization
msg = uart.read()
uart.write(msg)
并且在您的计算机上,您必须 运行 一些串行控制台,例如picocom 或者如果您是 Windows 用户,那么 Putty。连接后只需在终端中输入内容并按回车键。这基本上就是开始回显消息所需的全部内容。您可以在您的计算机上使用 Python serial
库,但我建议您坚持使用最简单的工具,直到您第一次成功连接。
还有两件事:
- 恕我直言,您的初始化不完整。它应该包含端口和超时选项。
- 您不能使用相同的 USB 端口进行编程和通信(如在 Arduino 中)。 REPL 会破坏你的连接。您需要 2 美元的 USB 转串行适配器从中国购买并连接到其他 UART 引脚(ESP32 上有 3 个 UART 接口)。
我有一个 ESP32 通过 USB 端口连接到电脑。我可以使用 ESP32 使用打印语句通过串行连接发送数据,我需要定期向 ESP32 写入命令。如何在 MicroPython 中读取通过 ESP32 上的 COM 端口传输的内容?我尝试了以下多种变体均未成功:
from machine import UART
uart = UART(115200)
while 1:
if uart.any():
msg = uart.read()
print(msg)
打印仅用于在 REPL 中打印。如果你想通过串口与单片机通信,你必须写入它。
最简单的例子是:
# your imports and initialization
msg = uart.read()
uart.write(msg)
并且在您的计算机上,您必须 运行 一些串行控制台,例如picocom 或者如果您是 Windows 用户,那么 Putty。连接后只需在终端中输入内容并按回车键。这基本上就是开始回显消息所需的全部内容。您可以在您的计算机上使用 Python serial
库,但我建议您坚持使用最简单的工具,直到您第一次成功连接。
还有两件事:
- 恕我直言,您的初始化不完整。它应该包含端口和超时选项。
- 您不能使用相同的 USB 端口进行编程和通信(如在 Arduino 中)。 REPL 会破坏你的连接。您需要 2 美元的 USB 转串行适配器从中国购买并连接到其他 UART 引脚(ESP32 上有 3 个 UART 接口)。