ch32v305的sdio協(xié)議魔改應(yīng)用中出現(xiàn)的問題

使用ch32v305的sdio和fpga進行通信,不理會命令通道的交互,只用sdio的數(shù)據(jù)通道對fpga進行讀寫操作。

在1位數(shù)據(jù)線,stream模式,1MHz的時鐘速率,進行以下初始化

image.png

image.png

image.png

向fpga進行寫操作,用邏輯分析儀能夠觀察到正常的全部32字節(jié)的寫入;

image.png

但是使用4位或者8位數(shù)據(jù)寬度,發(fā)出來的數(shù)據(jù)是錯亂的,數(shù)據(jù)長度也不對,而且會“重發(fā)”。

如下圖所示,預(yù)期發(fā)送的數(shù)據(jù)是32個0xf0f0f0f0,但是邏輯分析儀捕捉結(jié)果是:

image.png

這就是出現(xiàn)的數(shù)據(jù)重發(fā)的數(shù)據(jù)波形(上圖是下圖其中一段放大后的結(jié)果):

每兩個數(shù)據(jù)發(fā)送之間的時間間隔就是代碼中設(shè)置的“數(shù)據(jù)超時時間”,sdiodatatimeout,1000個sdio時鐘周期,測出來是1ms左右。

image.png

是不是4位和8位數(shù)據(jù)模式需要有特殊的設(shè)置?

又或者是,即便在sdio主機在stream模式發(fā)送數(shù)據(jù)的過程中,也需要從機通過cmd或者data通道進行應(yīng)答?

您好,可以具體看一下你芯片的絲印,對于CH32V30x系列,目前流傳輸?shù)?位、8位總線模式僅支持批號倒數(shù)第六位不為0的產(chǎn)品。后續(xù)若有問題,可郵箱(lzs@wch.cn)和我溝通。若你不確定,也可芯片拍照發(fā)我看一下。


謝謝2樓的回復(fù) 踩到坑了 芯片絲印的批號倒數(shù)第六位正是0。。。


請問批次倒數(shù)第六位是0的芯片 還有其他坑嗎 例如高速usb方面的?


樓主可以仔細翻一下“CH32FV2x_V3xRM”這個文檔,大多數(shù)與特定批次相關(guān)的特殊情況都有標出。

不過還是希望WCH可以發(fā)布類似ST等廠商的Errata文檔,標注特定版本或所有版本芯片存在的限制與可行的緩解措施等等。有時想用一款芯片,為了查這些批次相關(guān)的限制不得不整個手冊全部細細讀下來。。。。


“CH32FV2x_V3xRM”這個文檔的更新記錄都沒有,其他的更不好說了


您好,@輝,高速USB是沒有問題的。感謝@雨華YuHua的建議,這邊會向相關(guān)同事反饋的


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

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