SPI模式為mode0,8bit傳輸,最后一位數(shù)據(jù)總在clock上升沿就發(fā)生跳變了,不是應(yīng)該在最后一個clock的下降沿才跳變嗎?請問這個問題該怎么解決
查看: 660
回復(fù): 2
CH32V305FBP6做SPI從機時發(fā)送數(shù)據(jù)最后1bit數(shù)據(jù)異常
熱門產(chǎn)品 :
CH182: 以太網(wǎng)PHY收發(fā)器芯片
因為是mode0,即SPI是在clock上升沿傳輸數(shù)據(jù)的,但是在傳輸最后一個字節(jié)的時候上升沿剛來MISO就已經(jīng)發(fā)生跳變了,導(dǎo)致master那邊采集到的最后1bit數(shù)據(jù)是跳變后的數(shù)據(jù)。
還有一個問題就是slave發(fā)送數(shù)據(jù)應(yīng)該是在MISO引腳上,但是MOSI上也有數(shù)據(jù),還望版主解答啊,快被這個SPI逼瘋了。
你好,關(guān)于第一個問題時鐘沿跳變的問題,這是因為SPI作為從機時,為了更快速的將最后一個bit發(fā)送完,只保持了半個APB總線的周期的時間。
第二個原因是,主機不發(fā)送(MOSI不發(fā)送)數(shù)據(jù),SCLK就沒有時鐘,那么從機也就發(fā)不出去數(shù)據(jù)了,SPI全雙工通信就是這樣規(guī)定的。具體還有問題可以郵箱聯(lián)系我zdg@wch.cn
請勿發(fā)布廣告和違法內(nèi)容, 代碼可以選擇編輯器代碼語言格式, 更易他人閱讀幫助您, 或者留下聯(lián)系方式,以便更好更快服務(wù)您
只有登錄才能回復(fù),可以選擇微信賬號登錄