您现在的位置是:主页 > HID规范 >
HID 描述符(通用)
发布时间:2022-11-21 03:11:30所属栏目:HID规范 已帮助人编辑作者:【USB接口百科】
HID设备一般与其它设备组合成USB复合设备.在Windows下USB通用驱动程序USBCCGP.SYS根据接口进行枚举。
设备描述符HID的设备描述与通用USB驱动程序数据结构定义一致。
不过其bDeviceClass,bDeviceSubClass,bDeviceSubClass必须置为0,其端点0可支持的最大字节数可为8,16,32或64.
struct _DEVICE_DESCRIPTOR_STRUCT
{
BYTE bLength; //设备描述符的字节数大小,为0x12
BYTE bDescriptorType; //描述符类型编号,为0x01
WORD bcdUSB; //USB版本号
BYTE bDeviceClass; //USB分配的设备类代码,HID必须为0
BYTE bDeviceSubClass; //usb分配的子类代码,HID必须为0
BYTE bDeviceProtocl; //USB分配的设备协议代码,HID必须为0
BYTE bMaxPacketSize0; //端点0的最大包的大小
WORD idVendor; //厂商编号
WORD idProduct; //产品编号
WORD bcdDevice; //设备出厂编号
BYTE iManufacturer; //描述厂商字符串的索引
BYTE iProduct; //描述产品字符串的索引
BYTE iSerialNumber; //描述设备序列号字符串的索引
BYTE bNumConfiguration; //可能的配置数量
}DEVICE_DESCRIPTOR_STRUCT
USB设备描述符各字段的详细定义见 USB设备描述符一节。
配置描述符HID配置描述符在HID规范中并无特殊定义,关于配置描述符各字段的详细定义,详见USB配置描述符一节。
接口描述符HID的接口描述符需要将bInterfaceClass设为3,以表示是HID设备;子类为00或01;协议代码可以为00,01或02。
struct _INTERFACE_DESCRIPTOR_STRUCT
{
BYTE bLength; //设备描述符的字节数大小,为0x09
BYTE bDescriptorType; //描述符类型编号,为0x04
BYTE bInterfaceNunber; //接口的编号
BYTE bAlternateSetting;//备用的接口描述符编号
BYTE bNumEndpoints; //该接口使用端点数,不包括端点0
BYTE bInterfaceClass; //接口类型 ,必须为03.
BYTE bInterfaceSubClass;//接口子类型 ,为00或为01
BYTE bInterfaceProtocol;//接口所遵循的协议 ,可为00,01,02
BYTE iInterface; //描述该接口的字符串索引值
}INTERFACE_DESCRIPTOR_STRUCT
关于接口描述符各字段的详细定义,详见USB接口描述符一节。
端点描述符HID端点描述符一般将端点设为中断方式。
HID端点描述符在HID规范中并无特殊定义,关于端点描述符各字段的详细定义,详见USB端点描述符一节。
字符串描述符HID字符串描述符在HID规范中并无特殊定义,关于字符串描述符各字段的详细定义,详见USB字符串描述符一节。
以上就是USB接口百科为您提供HID 描述符(通用)的解读,本文章链接: http://www.usb-hub.cn/hidgf/42325.html 欢迎分享转载,更多婚礼相关资讯请前往HID规范
相关文章
USB接口百科推荐
HID 简介
HID 设置协议SetProtocol
HID报告描述符主项InputReport、OutputReport,FeatureReport
HID设备描述符的级级关系
HID 获取空闲请求GetIdle
HID报告描述符的GLOBAL ITEM
HID报告描述符详解
HID报告描述符协议
HID规范、HID Usage Tables版本及文档分类
HID设备的bInterfaceClass、bInterfaceSubClass和bInterfaceProtocol
HID报告描述符Usage
HID 设备描述符关系
HID 全局条目(Global Item)
HID局部条目
HID 设置空闲SetIdle