關(guān)于CH569 USB3庫的一個問題

我們用CH569W開發(fā)大容量存儲設(shè)備,有些SCSI命令不支持時,需要返回STALL。這樣調(diào)用USB30_IN_Set(ENDP_2, DISABLE, STALL, 0, 0);將IN端口設(shè)置為STALL,此時主機返回了C0000011錯誤,并產(chǎn)生RESET,出現(xiàn)掉盤,這與預(yù)期不符。設(shè)想應(yīng)該返回USTS c0000004 stall pid錯誤代碼,而且不能RESET。這個是什么原因?怎么調(diào)用才能返回STALL而不產(chǎn)生復(fù)位?

icon_rar.gifEXAM.zip

用這個例程測試,其中USB函數(shù)庫已經(jīng)更新


使用以上EXAM中的庫,仍然無法返回上傳端點STALL狀態(tài)。


還是這樣調(diào)用:USB30_IN_Set(ENDP_2, DISABLE, STALL, 0, 0);


主機端返回了命令超時或C0000011錯誤


這個CH569的USB3資料有點少啊,不管是芯片手冊還是庫都沒有詳細(xì)文檔,在調(diào)試遇到問題時候有點無從下手。有沒有詳細(xì)點的資料啊?


現(xiàn)在用的這個USB3的庫版本號讀出來是32


上傳端點STALL狀態(tài)設(shè)置不成功的問題,把代碼中的printf輸出全部注釋掉就好了(這個原因比較奇怪)。


現(xiàn)在又有新問題,IN端點(ENDP_2)返回STALL成功以后,收到USB_CLEAR_FEATURE,將IN端點(ENDP_2)恢復(fù)為ACK狀態(tài)。不知什么原因主機又返回了C0000011。

1676422564881065.png

1676422564415235.png



希望能夠看到USB3處理端點STALL狀態(tài)的例程參考,謝謝!


收到,預(yù)計本周提供包括端點0、非0端點響應(yīng)stall的示例代碼。到時候更新至該帖中:

http://m.findthetime.net/bbs/thread-91615-1.html



謝謝!還有一個很奇怪的現(xiàn)象,設(shè)備收到USB_SET_FEATURE(00 03 30 00 00 00 00 00),在處理USB_SET_FEATURE的地方稍有延時,就會導(dǎo)致通信卡頓8s左右才恢復(fù)正常。這里僅僅只有兩條if判斷,而且都不符合進入條件。

SETFEATURE.png把這兩條if注釋掉就沒這個現(xiàn)象了。

SETFEATURE2.png試過在這里只有printf輸出一點信息,也會導(dǎo)致通信卡頓現(xiàn)象。




@TECH5?"預(yù)計本周提供包括端點0、非0端點響應(yīng)stall的示例代碼。"麻煩問一下,這個示例代碼有了嗎?


您好,留一個郵箱,這邊郵件發(fā)送給你。

因為是測試代碼,不具備完整功能,不便直接貼到帖子里,避免給別人造成誤解。感謝。


@TECH5?我的郵箱是這個:個人信息保護,已隱藏,感謝!


郵件已發(fā)送,請注意查收。
通常一個stall的處理包含很多步驟。

1、端點傳輸事務(wù)上應(yīng)答stall狀態(tài)。

2、可能存在clear feature請求的發(fā)生,用于復(fù)位端點狀態(tài),這取決于主機行為。

3、如果stall行為發(fā)生于某一個 類協(xié)議 的基礎(chǔ)上,可能還需要在后面針對 類協(xié)議 進行后續(xù)的處理。


單純的端點應(yīng)答stall的代碼實現(xiàn):

image.png



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

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