USB Host 接口
ESP32-S3 和 ESP32-S2 上的 USB Host 接口用于连接 USB 外设。可以配置多个设备,但同一时间只能连接一个。默认情况下,设备必须直接连接到 ESP32,但可以通过将 enable_hubs 选项设置为 true 来更改此设置。
此组件被 usb_uart 组件使用,允许 ESP32 连接到 USB 串行设备。也可以在此组件中直接配置设备,但这仅用于调试目的。
# 示例配置条目usb_host: enable_hubs: true max_transfer_requests: 32 # 适用于高吞吐量设备,如 115200+ 波特率的 USB UART devices: - id: device_0 vid: 0x1725 pid: 0x1234- id (可选, ID):此组件使用的 ID。
- enable_hubs (可选, 布尔值):是否包含集线器支持。默认值为
false。 - max_transfer_requests (可选, 整数):并发 USB 传输请求的最大数量。范围:1-32。默认值为
16。如果您看到”所有 X 个传输槽位在使用中”错误,请为高吞吐量设备(例如 115200+ 波特率的 USB UART)增加此值。 - devices (可选, 列表):要配置的设备列表。
设备配置选项
Section titled “设备配置选项”- id (可选, ID):分配给设备的 ID。
- vid (*必需, 整数):设备的供应商 ID。使用 0 作为通配符。
- pid (*必需, 整数):设备的产品 ID。使用 0 作为通配符。
将 vid 和 pid 都设置为 0 将匹配任何设备。
如果配置了设备,并且连接了与配置匹配的设备,该设备将连接到 ESP32,并在 DEBUG 级别显示日志条目。如果日志级别设置为 VERBOSE,则将转储设备的配置描述符。设备将保持连接状态,直到断开连接或重置 ESP32。
如果插入的设备与任何配置的设备都不匹配,该设备将被断开连接,并在 DEBUG 级别显示日志条目。