什么是USB HID col参数

时间:2013-03-29 12:23:56

标签: c# windows usb hid

我有一个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

1 个答案:

答案 0 :(得分:3)

看起来像某种集合ID(例如HIDClass Hardware IDs for Top-Level Collections