USB Host UART 接口
此组件允许 ESP32-S3 或 ESP32-S2 主控 USB 串行外设。它使用 Usb Host 组件作为 USB-OTG 主机与设备进行接口。
目前支持的设备列在下表中:
| 名称 | VID | PID | 描述 |
|---|---|---|---|
| CH34X | 0x1A86 | 0x55D5 | USB 转串口适配器,多通道(最多 3 个通道) |
| CH340 | 0x1A86 | 0x7523 | USB 转串口适配器,单通道 |
| ESP_JTAG | 0x303A | 0x1001 | ESP32 JTAG 接口 |
| STM32_VCP | 0x0483 | 0x5740 | STM32 虚拟 COM 端口 |
| CDC_ACM | 0x0000 | 0x0000 | USB CDC ACM(抽象控制模型) |
| CP210X | 0x10C4 | 0xEA60 | Silicon Labs USB 转 UART 桥接器 |
# 示例最小配置条目usb_uart: - type: cp210x channels: - id: uch_1 baud_rate: 9600 buffer_size: 1024- id (可选, ID):此组件使用的 ID。
- type (*必需, 字符串):要连接的 USB 串行设备类型。可选值为
ch34x、ch340、esp_jtag、stm32_vcp、cdc_acm、cp210x。 - channels (*必需, 列表):要配置的通道列表。
- vid (可选, 整数):设备的供应商 ID。使用 0 作为通配符。每种类型都有默认 VID,如果设置此项将被覆盖。
- pid (可选, 整数):设备的产品 ID。使用 0 作为通配符。每种类型都有默认 PID,如果设置此项将被覆盖。
将 vid 和 pid 都设置为 0 将匹配任何设备。
通道配置选项
Section titled “通道配置选项”- id (可选, ID):分配给通道的 ID。此 ID 可用于任何需要
uart组件的地方。 - baud_rate (*必需, 整数):通道使用的波特率。对于
stm32_vcp、esp_jtag和cdc_acm类型,此项是可选的(并被忽略)。 - buffer_size (可选, 整数):通道使用的缓冲区大小。默认值为 256 字节。
- stop_bits (可选, 浮点数):使用的停止位数量。默认值为 1。其他选项为 1.5 和 2。
- data_bits (可选, 整数):使用的数据位数量,范围为 5-8。默认值为 8。
- parity (可选, 字符串):使用的校验方式。可选值为
NONE、EVEN、ODD、MARK和SPACE。默认值为NONE。 - dummy_receiver (可选, 布尔值):如果设置为 true,通道将消耗接收到的任何数据。这对调试很有用。默认值为 false。
- debug (可选, 布尔值):如果设置为 true,通道将记录所有发送和接收的数据。默认值为 false。
cdc_acm 类型是通用的 USB CDC ACM(抽象控制模型)设备。这是串行通信的常见 USB 设备类。
此驱动程序不严格强制执行 CDC-ACM 配置规范,因此可能适用于未正确实现该规范的设备。它期望找到一个中断端点、一个批量输入端点和一个批量输出端点。
cdc_acm、esp_jtag 和 stm32_vcp 类型不支持更改波特率、停止位或数据位数量,因为它们实现的是虚拟通道,通常不与物理 UART 关联。