車載T-BOX中MCU和SoC通信方案(SPI通信方式)
在車載T-BOX中,MCU和SoC之間必然存在數(shù)據(jù)通信,本篇博文將分享一種基于SPI方式的通信方案。
拓展學(xué)習(xí):一文搞懂SPI通信協(xié)議。
SoC作為主機,MCU作為從機,配置模式如下所示:
通信模式:模式0;
通信速率:4.8Mbps;
數(shù)據(jù)存儲:小端模式;
數(shù)據(jù)長度:每包256Byte。
MCU和SoC物理連接如圖所示:
名詞解析:
MISO:主設(shè)備輸入從設(shè)備輸出;
MOSI:主設(shè)備輸出從設(shè)備輸入;
SCLK:時鐘信號,主設(shè)備產(chǎn)生;
CS:片選,主設(shè)備控制,低電平有效;
S_RQ:從設(shè)備請求數(shù)據(jù)信號,通知主設(shè)備開始通信;
M_RQ:主設(shè)備發(fā)送數(shù)據(jù)信號,通知從設(shè)備需要發(fā)送數(shù)據(jù)。
主設(shè)備和從設(shè)備通信有兩種情況:主設(shè)備主動通信和從設(shè)備主動通信。
主設(shè)備主動通信機制如圖所示:
通信機制解析:
當(dāng)主設(shè)備有數(shù)據(jù)需要主動發(fā)送給從設(shè)備時,主設(shè)備需要發(fā)送M_RQ請求(拉高M_RQ引腳,高電平維持至少1ms);
從設(shè)備接收到主設(shè)備M_RQ信號(觸發(fā)上升沿中斷)后,準備SPI通信的配置和數(shù)據(jù),準備完成后,發(fā)送S_RQ信號(拉高S_RQ引腳,高電平維持至少1ms);
主設(shè)備接收到從設(shè)備S_RQ信號(觸發(fā)上升沿中斷)后,開始SPI通信。
名詞解析:
△t1:從設(shè)備通信請求最大等待時長500ms(從設(shè)備發(fā)送S_RQ信號至主設(shè)備SPI通信結(jié)束釋放CS產(chǎn)生的時長),如果超時,從設(shè)備會再次發(fā)起S_RQ請求信號;
△t2:主設(shè)備的通信請求最大等待時長500ms(主設(shè)備發(fā)送M_RQ信號至從主設(shè)備接收到從設(shè)備發(fā)送S_RQ信號的時長),如果超時,主設(shè)備會再次發(fā)起M_RQ請求信號。
從設(shè)備主動通信機制如圖所示:
通信機制解析:
當(dāng)從設(shè)備有數(shù)據(jù)需要主動發(fā)送給主設(shè)備時,從設(shè)備準備SPI通信的配置和數(shù)據(jù)完成后,發(fā)送S_RQ信號(拉高S_RQ引腳,高電平維持至少1ms)請求主設(shè)備開啟SPI通信;
主設(shè)備接收到從設(shè)備S_RQ信號(觸發(fā)上升沿中斷)后,開啟SPI通信。
名詞解析:
△t1:從設(shè)備通信請求最大等待時長500ms(從設(shè)備發(fā)送S_RQ信號至主設(shè)備SPI通信結(jié)束釋放CS產(chǎn)生的時長),如果超時,從設(shè)備會再次發(fā)起S_RQ請求信號。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。