ch569 usb3.0通訊中主機(jī)收到STALL

如題,在CH569長時(shí)間通訊過程中主機(jī)會(huì)收到STALL故障造成通訊中斷,現(xiàn)在發(fā)現(xiàn)只有復(fù)位才能恢復(fù)。

請問:

1、在程序里有沒有辦法規(guī)避出現(xiàn)STALL故障?

2、出現(xiàn)STALL后,軟件有什么方法可以恢復(fù)通訊?

補(bǔ)充說明:CH569作為從機(jī),采用BULK傳輸


通常是控制傳輸,設(shè)備可以應(yīng)答STALL狀態(tài),當(dāng)然非0端點(diǎn)也具備應(yīng)答STALL的能力。

首先應(yīng)當(dāng)定位,設(shè)備是對(duì)哪個(gè)傳輸應(yīng)答了STALL, 如果是控制傳輸,根據(jù)主機(jī)下發(fā)請求,在請求處理函數(shù)中添加相應(yīng)代碼處理。若相關(guān)處理代碼不存在,默認(rèn)應(yīng)答STALL。


你好,STALL是端點(diǎn)1接收數(shù)據(jù)過程中出現(xiàn)的,是BULK傳輸。


要想讓非0端點(diǎn)應(yīng)答STALL,這個(gè)的代碼實(shí)現(xiàn)應(yīng)該是很明顯的可以發(fā)現(xiàn)的。

所以排除代碼確實(shí)寫成這樣之外,可以描述一下是如何判斷這個(gè)問題是因?yàn)閟tall引起的,USB3.0傳輸錯(cuò)誤的定位,沒有硬件工具的情況下實(shí)際還是比較困難的。避免是你的理解錯(cuò)誤



上位機(jī)給569的端點(diǎn)1發(fā)數(shù)據(jù),569通過OUT中斷連續(xù)讀取數(shù)據(jù)。通訊中斷時(shí),上位機(jī)代碼返回的故障碼是STALL。

569中斷處理的部分代碼如下:

image.png


image.png


返回異常前,程序是否有執(zhí)行USB30_StandardReq或者USB30_NonStandardReq?

USB30_OUT_Status返回的nump值是否變?yōu)?,指示包發(fā)送完成?

電腦顯示的錯(cuò)誤并不一定真的是stall。


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

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