大家好! 我初次使用CH375S,我要用這個芯片做主機(jī)/設(shè)備?,F(xiàn)在我在調(diào)試和PC的通訊,設(shè)置為模式1,即外置固件,啟用的設(shè)備模式。在PC對它進(jìn)行枚舉的時候,我發(fā)現(xiàn)經(jīng)常出現(xiàn)一個0X5F的中斷狀態(tài),不知道是什么狀態(tài)。還有就是在EP0_SETUP的中斷狀態(tài)下,我接受的標(biāo)準(zhǔn)請求中只有編號為06和05的兩種標(biāo)準(zhǔn)命令,其它命令比如獲取狀態(tài),清楚特征等命令都沒接受到。并且在編號為06獲取描述符的命令中我只接受到了獲取設(shè)備描述符的命令,即描述符類型為01,沒有接受到獲取描述符類型02的命令,所以枚舉一直沒有成功。不過也有偶爾收到獲取描述符類型02的標(biāo)準(zhǔn)命令,不過很少才有。不知道是怎么回事。請指教。這種情況是否可能是片子有問題,我發(fā)CHECK命令,測試數(shù)據(jù)是正確的。在模式2即內(nèi)置固件的設(shè)備模式下PC可以對它進(jìn)行正確的枚舉。但是由于我要用它做MASS STORAGE傳輸,所以需要自己提供描述符。謝謝各位。
可能是你寫的程序有問題,可以不可以將你的程序發(fā)過來看下: e_mail:tech@wch.cn
哦,我用的就是貴公司的CH372DSK程序,不過我是用在44B0上,所以做了些更改?,F(xiàn)在已經(jīng)可以枚舉了,不過還有點(diǎn)問題。就是我在收到的標(biāo)準(zhǔn)請求中始終只看見設(shè)置地址和獲取描述符兩種命令,其它命令沒收到。我現(xiàn)在改變了延遲,我估計(jì)是PC請求后由于中斷發(fā)生的速度太快,我的程序還未來得及處理,然后有些中斷被覆蓋了,不知道是否可能是這種原因?,F(xiàn)在我減小了延遲,好象可以收到獲取描述符類型02即配置描述符的命令了。謝謝。
USB協(xié)議里面關(guān)于主機(jī)的總線枚舉的操作過程是這樣的: 1,首先通過默認(rèn)端點(diǎn)0來讀取設(shè)備描述符。 2,接著主機(jī)在給設(shè)備設(shè)置唯一的一個地址(1~127) 3,主機(jī)通過這個唯一的地址獲取配置描述符 4,主機(jī)通過從設(shè)備獲取到的配置描述符獲取配置信息來配置設(shè)備 這只是標(biāo)準(zhǔn)的USB主機(jī)的操作,如果設(shè)備是一個USB類的設(shè)備的話,那還應(yīng)該有別的操作。
這個過程我到也清楚,只是我通過BUSHOUND看見PC發(fā)了獲取狀態(tài)(GET_STATUS)之類的標(biāo)準(zhǔn)命令,但是卻并沒有收到這些命令,所以有些奇怪。不過好像只要正確提供給了PC兩種描述符就可以枚舉成功了,謝謝。