CH375獲取設(shè)備描述符和配置描述符

最近在逐步的做stm32通過CH375連接打印機(jī),在枚舉過程中,通過CH375_Rd_Desc(1)能讀到正確的設(shè)備描述符,但是當(dāng)發(fā)送CH375_Rd_Desc(2)時,獲取的代碼與設(shè)備描述符的是一樣的,這是什么原因造成的呢?

如果你是使用JTAG或者其他單步調(diào)試的方式,建議改用串口打印的方式調(diào)試,單步調(diào)試USB的時候可能會出現(xiàn)異常。


調(diào)試用的是ST-link ,并沒有進(jìn)行單步調(diào)試,只是在watch某些全局變量,發(fā)現(xiàn)的這個問題,結(jié)果就是端點沒法設(shè)置


調(diào)試用的是ST-link ,并沒有進(jìn)行單步調(diào)試,只是在watch某些全局變量,發(fā)現(xiàn)的這個問題,結(jié)果就是端點沒法設(shè)置


這里可以確定的是,設(shè)備描述符獲取的是正確的,但是不管我發(fā)送的get_descr是1還是2,返回的都是設(shè)備描述符


可能是操作順序上造成的,你這樣,在第一獲取設(shè)備描述符之前先復(fù)位CH375,然后正常設(shè)置速度、配置主機(jī)等操作,獲取設(shè)備描述符,然后設(shè)置設(shè)備地址,然后在獲取設(shè)備描述符。


操作順序大體上是相同的,首先復(fù)位CH375指的是上電復(fù)位?還有我沒有設(shè)置速度,這個會有影響么?



是不是你獲取設(shè)備描述符是正確的,獲取配置描述符不正確,所以存在緩沖區(qū)里的還是設(shè)備描述符。注意所以當(dāng)使用獲取描述符命令描述符的長度超過64字節(jié)時,CH375將返回操作狀態(tài)USB_INT_BUF_OVER,這種情況下必須自己發(fā)命令來實現(xiàn)描述符的獲取


CH375提供了很多例程,為什么STM32的例程我怎么也找不到?沁恒能不能提供一套STM32對應(yīng)的CH375的例程呢?


我們提供的都是51單片機(jī)的例子,STM32只需要修改一下讀寫接口就可以了,流程上是一樣的。


是不是你獲取設(shè)備描述符是正確的,獲取配置描述符不正確,所以存在緩沖區(qū)里的還是設(shè)備描述符。注意所以當(dāng)使用獲取描述符命令描述符的長度超過64字節(jié)時,CH375將返回操作狀態(tài)USB_INT_BUF_OVER,這種情況下必須自己發(fā)命令來實現(xiàn)描述符的獲取

我也遇到一個類似的問題,讀取設(shè)備描述符的時候正常為0x12字節(jié),但是讀取配置描述符的時候返回了USB_INT_BUF_OVER,遇到這種情況,怎么辦呢?


此時內(nèi)部緩沖區(qū)溢出,一般配置描述符個數(shù)超過64字節(jié),不可以再使用GET_DESCR??梢允褂肐SSUE_TKN_X或者ISSUE_TOKEN收發(fā)包。詳細(xì)使用可以在右上角搜索框搜“l(fā)uoye”第一個帖子,里面找到375操作鍵鼠的例子。


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频