USB的描述符详解总结模板

上传人:汽*** 文档编号:508428285 上传时间:2023-10-28 格式:DOC 页数:26 大小:993.50KB
返回 下载 相关 举报
USB的描述符详解总结模板_第1页
第1页 / 共26页
USB的描述符详解总结模板_第2页
第2页 / 共26页
USB的描述符详解总结模板_第3页
第3页 / 共26页
USB的描述符详解总结模板_第4页
第4页 / 共26页
USB的描述符详解总结模板_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《USB的描述符详解总结模板》由会员分享,可在线阅读,更多相关《USB的描述符详解总结模板(26页珍藏版)》请在金锄头文库上搜索。

1、USB 的描述符与命令请求详解一、 描述符1. 什么是描述符所谓描述符,就是用于描述设备特性的具有特定格式排列的一种数据组织结构。2. 描述符的作用描述符的作用在于设备向主机汇报自己的信息、特征,主机根据这些信息从而加载相应的驱动程序。3. 描述符的分类描述符分为三大类:标准描述符、设备类描述符、厂商描述符。除字符串描述符可选外,任何设备都必须包含剩下的几种标准描述符。在 USB1.0 中规定了 5 种标准的描述符:设备描述符配置描述符接口描述符端点描述符字符串描述符规定的设备类描述符有:集线器类描述符、人机接口类描述符。下表是三种描述符的类型值:表 1 .USB 描述符的类型值类型描述符描述

2、符值设备描述符( Device Descriptor)0x01配置描述符( Configuration Descriptor)0x02标准描述符字符串描述符( String Descriptor)0x03接口描述符( Interface Descriptor)0x04端点描述符( EndPoint Descriptor)0x05(Device Qualifier descriptor)0x06(BOS descriptor)0x0F(Device Capability descriptor)0x10端点伴随描述符 (Endpoint companion descriptor)0x30类描述符集

3、线器类描述符( Hub Descriptor)0x29HID )人机接口类描述符(0x21厂商定义的描述符0xFF4. 使用的几种类设备类 DeviceClass下表是设备类值的含义。表 2. 设备的类别( bDeviceClass)值(十进制)值(十六进制)说明00x00使用接口描述符中提供的类29220224255接口类 InterfaceClass下表是接口类值的含义。表 3.值(十六进制)0x010x020x030x050x060x070x080x090x0A0x0B0x0D0x0E0xDC0xE00xEF0xFE0xFF0x02通信类( CDC )0x09集线器类0xDC用于诊断用途

4、的设备类0xEF混杂类型设备类0xFF厂商定义的设备类USB 协议定义的接口类别(bInterfaceClass)类别音频类通信类( CDC )人机接口类( HID )物理类图像类打印机类大数据存储类集线器类CDC 数据类智能卡类安全类Video视频设备(摄像头,Class_0e&SubClass_03&Prot_00)诊断设备类无线控制器类混杂设备类特定应用类(包括红外的桥接器等)厂商定义的设备类的交叉与独享在描述符中,只有设备描述符和接口描述符中会有类别之分,即只有设备和接口会分类使用,不过有些类别的使用只需经过设备或接口的区分就可彻底清楚明白,这说明在设备类别和接口类别的定义上会有共同的

5、类别名称。而有些类别则是设备或接口独享的,下表是与使用设备相关的类别划分交叉或共享情况:Base ClassUsageDescription00hDeviceUse class information in the Interface Descriptors01hInterfaceAudio02hBothCommunications and CDC Control03hInterfaceHID (Human Interface Device)05hInterfacePhysical06hInterfaceImage07hInterfacePrinter08hInterfaceMass Stor

6、age09hDeviceHub0AhInterfaceCDC-Data0BhInterfaceSmart Card0DhInterfaceContent Security0EhInterfaceVideo0FhInterfacePersonal Healthcare10hInterfaceAudio/Video DevicesDChBothDiagnostic DeviceE0hInterfaceWireless ControllerEFhBothMiscellaneousFEhInterfaceApplication SpecificFFhBothVendor Specific(此表也适用于

7、标准命令 Get_Descriptor中 wValue域高字节的取值含义)【说明:】在设备或接口分类上均可彻底分清使用的(Usage = Both) ,即在任一处描述符中定义即可的分清楚使用的类 (Usage = Both)的基本类有:02h -通信及 CDC控制类;DCh -诊断设备类;EFh -混杂设备类;FFh -厂商定义的设备类。5. 标准描述符设备描述符表 4 、 USB 设备描述符的结构偏移域Bytes值描述0bLength1数字此描述符的字节数1bDecriptorType1常量描述符的类型(此处应为 0x01,即设备描述符)2bcdUSB2BCD 码USB 版本号( BCD码)

8、设备类码:bDeviceClass=0, 表明设备类型使用接口描述符中定义的类型,且各个接口独立工作。4 bDeviceClass1设备类bDeviceClass = FFh,表明设备类是由厂商自定义的。 bDeviceClass=1FEh ,查表可得对应设备类值,该设备在不同的接口上支持不同的类。且这些接口可能不能独立工作。此值指出了这些接口集体的类定义。51设备子类设备子类码:bDeviceSubClass这些码值的具体含义根据bDeviceClass域来看。如 bDeviceClass域为零,此域也须为零如 bDeviceClass域为 FFH ,此域的所有值保留。61设备协议协议码这些

9、码的值视 bDeviceClass和bDeviceSubClass的值而定。如果设备支持设备类相关的协议,此码标志了设备bDevicePortocol类的值。如果此域的值为零,则此设备不支持设备类相关的协议,然而,可能它的接口支持设备类相关的协议。 如果此域的值为FFH ,此设备使用厂商定义的协议。7bMaxPacketSize01数字端点 0 的最大包大小(仅 8,16,32,64为合法值)8idVendor2ID厂商标志(由 USB-IF 组织赋值)10idProduct2ID产品标志(由厂商赋值)12bcdDevice2BCD 码设备版本号( BCD 码)14iManufacturer1

10、索引描述厂商信息的字符串描述符的索引值。15iProduct1索引描述产品信息的字串描述符的索引值。16iSerialNumber1索引描述设备序列号信息的字串描述符的索引值。17bNumConfigurations1数字可能的配置描述符数目【说明 1:】当设备类型 bDeviceClass = 0时,说明类型将由接口描述符中定义的为准。【说明 2: 】从设备描述符表格中可知,有 3 个索引值:厂商信息索引、产品信息索引、设备序列号索引,这意味着,将有 3 个字符串描述符为其准备 。配置描述符配置描述符中包含了配置描述符本身的长度、所有配置信息的总长度、供电方式及远程唤醒、供电量。如果主机发出

11、标准命令 Get_Descriptor 要求获得设备的某个配置描述符时,该配置应用的所有信息都将发给主机,它包括:该标准配置符本身、该配置所包含的所有接口、端点描述符及设备类描述符和厂商描述符。下表为配置描述符结构:表 8 、 USB配置描述符的结构偏移量域大小值描述0bLength1数字此描述表的字节数长度。1bDescriptorType1常量配置描述表类型(此处为0x02 )2wTotalLength2数字此配置信息的总长(包括配置,接口,端点和设备类及厂商定义的描述符),即:将要返回的配置信息总长度。4bNumInterfaces1数字此配置所支持的接口个数5bCongfigurationValue1数字在 SetConfiguration()请求中用作参数来选定此配置。6iConfiguration1索引描述此配置的字串描述符的索引7bmAttributes1位图配置特性:D7 : 保留(设为 1 )D6 : 自给电源D5 : 远程唤醒D4.0:保留(设为1 )一个既用总线电源又有自给电源的设备

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号