USB描述符有设备描述符、标准配置描述符、接口描述符、端点描述符、字符串描述符,HID设备有HID描述符、报告描述符和物理描述符
描述符类型:
设备描述符
bcdUSB:0x0200-usb2.0;0x0101-usb1.1
配置描述符
1、一个USB设备可以有多种配置,这一点可以从设备描述符的最后一项得到:
bNumConfigurations:可能的配置数,一般单一设备该值都是1.
2、一个USB设备至少要有一个配置描述符。
3、配置描述符不会单独发送给USB主机,通常会以集合的形式发送给主机。集合通常包含:配置描述符,接口描述符,端点描述符,HID描述符。这几个描述符组成一个大数组。
bmAttributes:D7是保留位,默认为1;D6表示供电方式,0是自供电,1是总线供电;D5表示是否支持远程唤醒;D4~D0保留,默认为0.
接口描述符
当设备描述符设备类型bDeviceClass为0时,也就是指示用接口描述符来标识类别,此时用接口类、接口子类、接口协议来说明USB设备此功能所属的类别。如下图显示设备和接口的各种类别,这个类别给设备描述符用还是给接口描述符用要看Descriptor Usage标识(如图中所示)。我们如果单纯用作数据传输的话,直接写FFh就好,代表着用户自定义。USB类信息更详细内容可进入https://www.usb.org/defined-class-codes查看。
端点描述符