多配置USB设备枚举过程和多字符串描述符的枚举是相同的,过程如下:
1. 总线复位;
2. 获取设备描述符;
3. 总线复位;
4. 设置地址;
5. 获取设备描述符;
6. 获取配置描述符1;
7. 获取配置描述符2;
8. …
9. 获取字符串描述符1;
10. 获取字符串描述符2;
11. …
12. 设置配置;
13. …
  可见,对于多个配置和字符串描述符的设备而言,主机端需要进行多次获取(但不是必须的,主机也可能不获取完所有配置),而请求哪个配置是根据USB标准设备请求中的wValue字段确定的。也就是请求配置描述符0,wValue中的Descriptor Index设置成0,请求配置描述符1,设置成1再进行请求即可。具体可以参见USB2.0 Specification中9.4.3中的描述。我在这里对此简单翻译一下:
  wValue值在高字节指定描述符类型(Descriptor Type),在低字节指定描述符索引(Descriptor Index)。当一个设备实现相同类型的多个描述符时描述符索引Index就用于选择指定的描述符(仅用于配置和字符串描述符)。如果正常只有一个配置或者一个字符串描述符,那么使用默认值0就可以了。

USB设备多个配置描述符的获取过程相关推荐

  1. 32 usb 配置描述符_USB协议详解第4讲(USB描述符标准配置描述符)

    关注+星标公众号,不错过精彩内容 编排 | 一个早起的程序员 一个早起的程序员 1 USB描述符USB描述符有设备描述符.标准配置描述符.接口描述符.端点描述符.字符串描述符,HID设备有HID描述符 ...

  2. USB鼠标-配置描述符(三)

    USB 鼠标详解阅读顺序 1.枚举 2.设备描述符 3.设置地址 4.配置描述符 5.接口描述符 6.HID 描述符 7.端点描述符 8.字符串描述符 9.HID 报告描述符 10.HID 报告的返回 ...

  3. 【USB笔记】配置描述符Configuration Descriptor

    USB笔记 配置描述符(Configuration Descriptor) 配置描述符(Configuration Descriptor)说明了一个特定配置的相关信息.取得设备描述符(Device D ...

  4. usb驱动开发7——接口描述符

    此系列是http://blog.csdn.net/fudan_abc/博文的整理,同时加入了自己的理解.很敬佩fudan_abc的文章,仔细学习和分析受益很多.注:fundan_abc所分析linux ...

  5. 二,usb描述符-设备 配置 接口 端点

    一,基础概念 在USB设备的逻辑组织中,包含设备.配置.接口和端点4个层次. 每个USB设备都提供了不同级别的配置信息,可以包含一个或多个配置,不同的配置使设备表现出不同的功能组合(在探测/连接期间需 ...

  6. USB开发基础:USB命令(请求)和USB描述符

    一.USB命令 在USB规范里,对命令一词提供的单词为"Request",但这里为了更好的理解主机与设备之间的主从关系,将它定义成"命令". 所有的USB设备都 ...

  7. USB设备开发---- usb描述符概述

    说到USB设备,不得不提到各种描述符(descriptors), 一般来说,描述符有如下几种: 1:设备描述符(Device Descriptors) 2:配置描述符(Configuration De ...

  8. Usb设备驱动3:root hub守护进程2

    Hub正常工作后,主控制器就会定时询问hub是否有中断产生,当hub端口上有一个设备插入或拔除,hub就向主控制器发送urb请求,即把hub端口的变化状况告诉主控制器,这是通过urb请求来完成的,主机 ...

  9. (三) 查看USB设备

    目录 查看USB设备 lsusb ll /sys/bus/usb/devices cat /sys/kernel/debug/usb/devices dmesg title: 查看USB设备 date ...

最新文章

  1. 成都(10月24日时代广场)Windows 7社区发布活动
  2. Android开发之自定义Dialog二次打开报错问题解决
  3. 她说要介绍10000个开源项目?来!一起监督他!
  4. 广域网协议:PPP协议和HDLC协议—Vecloud微云
  5. 动态规划 dp02 最长非降子序列问题 c代码
  6. 【干货】浅谈分布式数据库中间件之分库分表
  7. java的数据类型如下所示
  8. springboot2.2.9源码搭建
  9. 山西计算机应用基本技能,计算机应用基本技能 山西省对口高考题库
  10. Qt——P27 QListWidget控件
  11. Asp.net网站的ClickOnce自动部署(3)-虚拟目录的配置
  12. 机器学习问题的十个实例
  13. php-5.6 安装部署整理
  14. Web前端 学习知识点总结(十二)jQuery进阶 表单验证和简单正则表达式
  15. C++ 中 _T 含义及用途
  16. maven不同环境引用不同版本的jar包依赖
  17. 读取excel数据 画k线 成交量图
  18. nginx启动、停止、重启命令
  19. 热用图片怎么表示简笔画,网络简笔画图片大全
  20. SAP采购申请审批策略配置

热门文章

  1. 在Python中使用Twitter Rest API批量搜索和下载推文
  2. 大数据ab 测试_在真实数据上进行AB测试应用程序
  3. 5930. 两栋颜色不同且距离最远的房子
  4. 551. 学生出勤记录
  5. leetcode 485. 最大连续1的个数
  6. leetcode 1370. 上升下降字符串
  7. leetcode剑指 Offer 53 - II. 0~n-1中缺失的数字(二分查找)
  8. slack通知本地服务器_通过构建自己的Slack App学习无服务器
  9. 两个链接合并_如何找到两个链接列表的合并点
  10. Angular 星级评分组件