使用 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 库,但我建议您坚持使用最简单的工具,直到您第一次成功连接。

还有两件事:

  1. 恕我直言,您的初始化不完整。它应该包含端口和超时选项。
  2. 您不能使用相同的 USB 端口进行编程和通信(如在 Arduino 中)。 REPL 会破坏你的连接。您需要 2 美元的 USB 转串行适配器从中国购买并连接到其他 UART 引脚(ESP32 上有 3 个 UART 接口)。