USB描述符和枚举总结 --自己总结

来源:互联网 发布:mac eclipse new task 编辑:程序博客网 时间:2024/06/05 06:01


1. 描述符之间的关系:

设备描述符(一个设备只有一个):里面决定设备有多少种配置。                            ----实际地址

配置描述符(每种配置一个配置描述符): 定义配置里有多少接口。                        ----抽象概念

接口描述符(每个接口有一个接口描述符):定义该接口有多少端点。                      ----抽象概念

端点描述符(每个端点有一个端点描述符):端点描述符定义端点的大小、类型。    ----实际地址

 

同一配置下不同接口的端点不能复用;

不同配置可复用同一端点。

 

2. 枚举:

一、第一次获取设备描述符

    1.1 用地址0向设备端点0获取设备描述符(此时根据设备端点0的大小,获得的设备描述符可能只有8个字节)。

          控制传输方式:包含建立过程、数据过程和状态过程

    1.2 用地址0向设备端点0发送新的设备地址

          控制传输方式:和第一次相比没有数据过程

二、第二次获取设备描述符

     用新地址,获取全部18个字节的设备描述符

三、获取配置描述符或配置描述符集合

     配置描述符集合包含配置描述符、接口描述符、类特殊描述符、端点描述符。

     有两种获取方式:

     3.1 主机在获取到配置描述符后,根据其中所描述的配置集合总长度来获取配置集合。

     3.2 不单独获取配置描述符,而直接使用最大长度来获取配置描述符集合。

 

接口描述符、类特殊描述符、端点描述符不能单独获取,必须跟配置描述符以一个集合的方式一并返回。

所以上位机在获取描述符时注意,只要调用到获取配置描述符即可。

 

详细参看圈圈USB相关章节



from:http://m.blog.csdn.net/phenixyf/article/details/45221195