没有合适的资源?快使用搜索试试~ 我知道了~
首页USB描述符的分类与介绍
USB描述符的分类与介绍
需积分: 50 15 下载量 96 浏览量
更新于2023-03-16
评论 2
收藏 1.7MB DOC 举报
USB描述符的详细介绍,每个USB设备都有一个设备描述符,设备描述符里面决定了该设备有多少种配置,每种配置描述符对应着配置描述符;而在配置描述符中又定义了该配置里面有多少个接口,每个接口有对应的接口描述符;在接口描述符里面又定义了该接口有多少个端点,每个端点对应一个端点描述符;端点描述符定义了端点的大小,类型等等。
资源详情
资源评论
资源推荐
USB 描述符的分类详解
所谓描述符,就是用于描述设备特性的具有特定格式排列的一种数据组织结
构。
描述符的作用在于设备向主机汇报自己的信息、特征,主机根据这些信息从
而加载相应的驱动程序。
描述符分为三大类:标准描述符、设备类描述符、厂商描述符。
标准描述符:除字符串描述符可选外,任何设备都必须包含剩下的几种标准
描述符:设备描述符、配置描述符、接口描述符、端点描述符、字符串描述符
设备类描述符可划分为:集线器类描述符、人机接口类描述符
每个 设备都有一个设备描述符,设备描述符里面决定了该设备有多少种
配置,每种配置描述符对应着配置描述符;而在配置描述符中又定义了该配置里
面有多少个接口,每个接口有对应的接口描述符;在接口描述符里面又定义了该
接口有多少个端点,每个端点对应一个端点描述符;端点描述符定义了端点的大
小,类型等等。
由此我们可以看出, 的描述符之间的关系是一层一层的,最上一层是设
备描述符,下面是配置描述符,再下面是接口描述符,再下面是端点描述符。在
获取描述符时,先获取设备描述符,然后再获取配置描述符,根据配置描述符中
的配置集合长度,一次将配置描述符、接口描述符、端点描述符一起一次读回。
其中可能还会有获取设备序列号,厂商字符串,产品字符串等
描述符的类型值:
表 描述符的类型值
类型 描述符 描述符值
标准描述符
设备描述符(
配置描述符()
字符串描述符()
接口描述符()
端点描述符( !)
"
设备限定描述符()
#
其他速率配置描述符()
$
设备类描述符
集线器类描述符(%&)
'
人机接口类描述符(%)
厂商定义的描
述符
((
1 标准描述符
标准描述符是指一组描述符,包括设备描述符、配置描述符、字符串描述符、
接口描述符、端点描述符、设备限定描述符和其他速率配置描述符。
这七种 描述符具有类似的格式,比如说它们的第一个字段都是 &)*+第二个
字段都是 &,-。
七种描述符在使用时以第二字段(&,-)来区分,描述符类型与
对应的 &,- 字段值对应关系为:
.设备描述符
设备描述符描述的是设备的整体信息,与设备本身一一对应,一个设备只能有一
个设备描述符。在主机对 设备枚举的过程中,首先要做的就是获取设备描
述符,以对设备有一个整体的了解。设备描述符由 个字段组成,总长度 /
字节:
这些字段都有一个小写字母表示的前缀,它们所表示的意思如下0
1&表一个字节,2/&;
13表一个字,2#&;
1&4表按位寻址;
1& 用 码表示;
1表索引值
1 表标识码
结构体定义
- 5657!,875,7,
9
:, &;*< ==设备描述符的字节数大小(/)
:, &,-<==设备描述符类型编号()
>87 & < == 版本号
:, &;< == 分配的设备类代码
:, &&;<== 分配的子类代码
:, &!;<== 分配的设备协议代码
:, &?!@A<==端点 的最大包大小
>87 6 < ==厂商编号
>87 ! < ==产品编号
>87 & < ==设备出厂编号
:, ?<==设备厂商字符串的索引
:, ! < ==描述产品字符串的索引
:, ;B4&<==描述设备序列号字符串的索引
:, &B4<==可能的配置数量
C657!,875,7,+D657!,875,7,<
各字段含义:
1&)*: 表示描述符的长度,对于设备描述符来说,其值为 /,即
。
1&,-: 描述符类型,对应表 中的值,设备描述符为 。
1& :该设备遵循的 版本号,以 码表示, 为
, 为 。
1&;:该设备所属的标准设备类, 协议中对常见的设备进行了
分类。该字段值为 ~( 时,表示是 协议中已定义的设备类,常用
的 % 设备类编号为 ,
部分设备类值的含义。
表 2. 设备的类别(bDeviceClass)
Base Class
Descriptor
Usage
Description
00h Device
Use class information in the Interface
Descriptors
01h Interface Audio
02h Both Communications and CDC Control
03h Interface HID (Human Interface Device)
05h Interface Physical
06h Interface Image
07h Interface Printer
08h Interface Mass Storage
09h Device Hub
0Ah Interface CDC-Data
0Bh Interface Smart Card
0Dh Interface Content Security
0Eh Interface Video
0Fh Interface Personal Healthcare
10h Interface Audio/Video Devices
11h Device Billboard Device Class
12h Interface USB Type-C Bridge Class
DCh Both Diagnostic Device
E0h Interface Wireless Controller
EFh Both Miscellaneous
FEh Interface Application Specific
FFh Both Vendor Specific
其它设备类编号参考:*0==333&= ;= 5;
1&!;:用于表示 设备类所采用的设备类协议,其值和
&; 和 &&; 有关。当此 字段为 时,表示不使用任何
设备类协议。如果该 设备属于某个设备类和设备子类,则应该继续指明所
采用的设备类协议。当该字段为 (( 时,表明设备 类协议由供应商自定义。
1&?!@A:用于表示在 设备中,端点 所支持最大数据包的长
度,它以字节为单位。对于低速 设 备 &?!@A 为 /;对于全速
设备 &?!@A 为 /、#、、#;对于高速 设 备
&?!@A 为 #。
1 6 :用于表示 设备供应商的 。 组织中规定每种产品都必
须包含一个供应商 +这样可以使主机加载合适的驱动程序。
1 ! :用于表示 产品的 +由设备供应商提供。 ! 用于表
示特定的 设备,在 设备上电的时候可以帮助 主机选择合适的驱
动程序。
1& :用于表示 设备的版本号,它以 码的形式表示。一般来
说 & 由设备供应商指定,在 设备上电的时候可以帮助 主机
选择合适的驱动程序。
1?:用于表示供应商字符串描述符的索引值。具体字符串的内容
在后面字符串描述符中定义。如果没有供应商字符串,可以置 。
1;B4&:用于表示设备序列号字符串描述符的索引值,如果没有,可
以置为 。
1&B4:用于表示该 设备所支持的配置数。
USB 设备描述符的结构
偏移 域
-
值 描述
&)*
数字 此描述符的字节数
&,-
常量 描 述 符 的 类 型 ( 此 处 应 为
,即设备描述符)
&
码 版本号(码)
&;
设备类
设备类码:
&; 2+ 表 明 设 备
类型使用接口描述符中定义的类
型,且各个接口独立工作。
&;2((*,表明设
备 类 是 由 厂 商 自 定 义
的 。 &; 2
E(*,查表可得对应设备类
值,该设备在不同的接口上支持
不同的类。且这些接口可能不能
独立工作。此值指出了这些接口
集体的类定义。
"
&&;
设备子
类
设备子类码:
这 些 码 值 的 具 体 含 义 根 据
&;域来看。
如 &;域为零,此域
也须为零
如 &;域为 ((%,此
域的所有值保留。
# &!
;
设备协
议
协议码
这些码的值视 &;和
&&;的值而定。
如果设备支持设备类相关的协
议,此码标志了设备类的值。如
果此域的值为零,则此设备不支
持设备类相关的协议,然而,可
能它的接口支持设备类相关的协
剩余36页未读,继续阅读
loudiliu
- 粉丝: 27
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0