阅读:3133回复:3
关于USB Device的类
USB设备的类是由主机的驱动程序决定还是由设备描述符或接口描述符决定的?我看到描述符里这2个字段都是0,但是在驱动程序的INF文件里CLASS处有区别,有的是“USB”,有的是HIDCLASS,甚为不解,请赐教,谢谢各位大侠指点,呵呵:)
|
|
最新喜欢:![]() |
沙发#
发布于:2004-10-12 08:43
是由设备描述符决定.如果都是0,则是通用设备,如果你的设备想要设
成某种设备的话,就必须设成该设备类,并遵照该设备类的协议要求. 而驱动是跟着你的固件程序走的. |
|
|
板凳#
发布于:2004-10-12 16:16
是设备描述符里的bDeviceClass字段还是bDeviceProtocol字段决定是什么设备?请指教啊,谢谢:)
|
|
地板#
发布于:2004-10-12 17:30
bDeviceClass字段决定是什么类型的设备
9 #define USB_CLASS_PER_INTERFACE 0 /* for DeviceClass */ 10 #define USB_CLASS_AUDIO 1 11 #define USB_CLASS_COMM 2 12 #define USB_CLASS_HID 3 13 #define USB_CLASS_PHYSICAL 5 14 #define USB_CLASS_STILL_IMAGE 6 15 #define USB_CLASS_PRINTER 7 16 #define USB_CLASS_MASS_STORAGE 8 17 #define USB_CLASS_HUB 9 18 #define USB_CLASS_CDC_DATA 0x0a 19 #define USB_CLASS_CSCID 0x0b /* chip+ smart card */ 20 #define USB_CLASS_CONTENT_SEC 0x0d /* content security */ 21 #define USB_CLASS_APP_SPEC 0xfe 22 #define USB_CLASS_VENDOR_SPEC 0xff 对HID设备 bDeviceClass 是0x3 bDeviceProtocol字段为1时说明是键盘,2是鼠标 对Mass 设备 bDeviceClass 是0x8 bDeviceProtocol 0或0x50 |
|