串行外設(shè)接口總線是一種以全雙工方式運行的同步串行通信鏈路,這意味著設(shè)備同時發(fā)送和接收數(shù)據(jù)。這些設(shè)備作為主/從設(shè)備進(jìn)行通信,其中主設(shè)備通過選擇帶有硬件線路的從設(shè)備來啟動通信,并且還提供用于將數(shù)據(jù)位移入和移出從設(shè)備的同步時鐘。
通信所需的信號是從選擇(SS)、主輸入從輸出(MISO)、主輸出從輸入(MOSI)和串行時鐘(SCK)。SPI 相對于其他通信協(xié)議的優(yōu)勢在于,尋址是在硬件中通過 SS 線執(zhí)行的,從而可以更快地尋址設(shè)備,并且通信是全雙工的,從而可以更快地傳輸數(shù)據(jù)(圖 1)。
圖 1 串行外設(shè)接口總線
SPI 通信開始于主機斷言 SS 線。根據(jù)器件的不同,SS 線可能是高電平有效或低電平有效。在開始通信之前,主設(shè)備必須等待至少一個時鐘周期。與 SS 線的活動極性非常相似,SS 激活后的等待時間因設(shè)備而異。例如,模數(shù)轉(zhuǎn)換器可能要求主設(shè)備在其 SS 線被斷言后等待轉(zhuǎn)換完成。接下來,主機將開始將數(shù)據(jù)移出 MOSI 線,并將數(shù)據(jù)移入 MISO。數(shù)據(jù)始終以全雙工方式傳輸,即使該數(shù)據(jù)沒有意義。例如,為了讓主設(shè)備從從設(shè)備接收 24 位數(shù)據(jù),它還必須向從設(shè)備發(fā)送 24 位數(shù)據(jù)(圖 2 和圖 3)。
圖 2 階段 0 時序
第一階段時間
沒有關(guān)于使用哪個時鐘邊沿來發(fā)送和接收數(shù)據(jù)的標(biāo)準(zhǔn),因此根據(jù)時鐘極性和時鐘相位,有四種可能的操作模式。請參閱下面圖 4 中的表格。
SPI 模式
圖 4 SPI 模式
以模式 1 為例,主機將在 SCK 線為低電平時空閑總線。當(dāng)主機將 SCK 線推高時,它也會將最高有效位放在 MOSI 線上。同時,Slave 將把最重要的放在 MISO 線上。接下來,Master 拉動 SCK 線并從 MISO 線上的 Slave 讀取穩(wěn)定位。同時,Slave 在 MOSI 線上讀取 Master 生成的穩(wěn)定位。當(dāng) SS 線路停用時,通信終止,因此它必須在整個通信幀期間保持活動狀態(tài)。
編輯:hfy
-
通信協(xié)議
+關(guān)注
關(guān)注
28文章
1008瀏覽量
40998 -
SPI
+關(guān)注
關(guān)注
17文章
1786瀏覽量
94978
發(fā)布評論請先 登錄
串行通信接口SPI與QSPI的區(qū)別

iic協(xié)議與spi協(xié)議的區(qū)別
KeyStone架構(gòu)串行外設(shè)接口(SPI)手冊
通信協(xié)議之SPI總線硬件篇

SPI的通信問題
spi master接口的fpga實現(xiàn)

DS1302芯片與FPGA之間SPI通信原理

基于Sitara平臺的EtherCAT主從站實現(xiàn)

利用Tl的智能高端開關(guān)實現(xiàn)SPI通信

SPI通信協(xié)議的基本概念和工作模式
單片機SPI通信實現(xiàn)
ESP32-C3使用SPI通信緩存有多少?
國產(chǎn)藍(lán)牙模組 | 藍(lán)牙主從一體功能應(yīng)用

評論