<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于μC/OS-Ⅱ的嵌入式USB控制軟件的實現(xiàn)

          基于μC/OS-Ⅱ的嵌入式USB控制軟件的實現(xiàn)

          作者: 時間:2011-08-16 來源:網絡 收藏

          Host檢測到有Device插入后,進行總線復位。然后Host使用默認地址0讀取設備描述符。獲取設備描述符的設備請求命令結構體為:
          g.jpg
          h.jpg
          第1次讀取設備描述符時,Host首先發(fā)送setup包;之后進入主機讀取數(shù)據階段,Host發(fā)送in包,Device返回一個18 B的設備描述符,可以用一個結構體將其讀回。最后Host發(fā)送0 B的數(shù)據包作為狀態(tài)相應,設備返回ACK作為應答。用邏輯分析儀抓包,3個包如圖3所示。

          本文引用地址:http://www.ex-cimer.com/article/150349.htm

          m.jpg


          第1次讀取設備描述符后,Host依次進行地址分配、第2次讀取設備描述符、讀取配置描述符、讀取描述符集、設置配置、讀取配置狀態(tài)和讀取接口狀態(tài),方法和第1次讀取設備描述符的方法一樣。
          i.jpg
          3.2 U盤兼容性
          在設備枚舉階段將會碰到很多關于U盤兼容性的問題。
          (1)總線復位時間。不同型號的U盤對于總線復位時間的要求是不同的,比如金士頓1 GB的U盤需要的復位時間至少280 ms。在中為保險起見,給予400 ms的復位時間。
          (2)有些U盤的端點0是8 B payload的,大多數(shù)是64 B。對于8 B payload的U盤,要嚴格從第1次獲取設備描述符時返回的第8字節(jié)獲取payload,否則盡管枚舉過程仍然能通過,但是后面在分析32字節(jié)的配置描述符時候會出現(xiàn)問題,沒有收到完整的配置描述符是分析不出端點1和端點2的地址以及端點payload的。
          (3)在枚舉階段獲取字符串描述符的時候,要進行判斷。因為有些U盤不支持返回字符串描述符,用if語句判斷,如果獲取不到字符串描述符就跳過,不要返回失敗。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();