USB设备多个配置描述符的获取过程
生活随笔
收集整理的這篇文章主要介紹了
USB设备多个配置描述符的获取过程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
多配置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设备多个配置描述符的获取过程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java、oracle对CLOB处理
- 下一篇: 数字图像处理(第三版)