[請益] USB HID Report ID是不是一定要傳?

看板ASM (組合語言)作者 (懂得放手..才是王道)時間8年前 (2017/06/01 14:43), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
最近在學習USB, 有個問題想請教.. HID Report Descriptor在描述的時候, 如果有必要, 需要宣告Report ID, Report ID在Interrupt Pipe需要連同Data一起傳送, 是因為可能會有多個Report共同一個Interrupt Pipe, 但如果HID Report是透過Control Pipe來傳送的時候(Get/Set Report Request), 是不是有辦法可以不傳Report ID, 會這樣想是因為, 我認為Control Pipe的資料傳輸都會經過Setup->Data->Handshake這三個Phase 而HID Get/Set Report的Request在Setup Phase時就已經可以知道了, 如果在Data Phase再傳一次似乎有點沒效率, 請問是否有什麼方法可以在Data Phase上不要傳Report ID呢?? 感謝.. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.210.106.78 ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1496299400.A.AD4.html

06/03 18:18, , 1F
如果不宣告report id的話,就是設為0, 有些應用是把r
06/03 18:18, 1F

06/03 18:18, , 2F
eport ID當command或是區分data length用的
06/03 18:18, 2F

06/06 15:12, , 3F
所以只要有宣告,在Data Phase就一定要傳,這看來避不掉...
06/06 15:12, 3F
文章代碼(AID): #1PBxU8hK (ASM)
文章代碼(AID): #1PBxU8hK (ASM)