我有一个 HID 设备(picoLCD 单色显示器),我在用 C# 编写的 Windows 程序中打开它。我通过以下路径获得了设备的 3 个 HID“实例”:
_devicePath = "\\\\?\\hid#vid_04d8&pid_c002&col01#7&12adec39&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
_devicePath = "\\\\?\\hid#vid_04d8&pid_c002&col02#7&12adec39&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}"
_devicePath = "\\\\?\\hid#vid_04d8&pid_c002&col03#7&12adec39&0&0002#{4d1e55b2-f16f-11cf-88cb-001111000030}"
它们都具有相同的 VID 和 PID,但“col”不同。这个参数是什么意思?为什么一台设备有 3 个设备“描述符”?
UsbView 仅显示一个具有 2 个端点的物理设备:
Device Descriptor:
bcdUSB: 0x0200
bDeviceClass: 0x00
bDeviceSubClass: 0x00
bDeviceProtocol: 0x00
bMaxPacketSize0: 0x08 (8)
idVendor: 0x04D8 (Microchip Technology Inc.)
idProduct: 0xC002
bcdDevice: 0x0002
iManufacturer: 0x01
iProduct: 0x02
iSerialNumber: 0x03
bNumConfigurations: 0x01
ConnectionStatus: DeviceConnected
Current Config Value: 0x01
Device Bus Speed: Full
Device Address: 0x05
Open Pipes: 2
Endpoint Descriptor:
bEndpointAddress: 0x81 IN
Transfer Type: Interrupt
wMaxPacketSize: 0x0040 (64)
bInterval: 0x01
Endpoint Descriptor:
bEndpointAddress: 0x01 OUT
Transfer Type: Interrupt
wMaxPacketSize: 0x0040 (64)
bInterval: 0x01