串行外設(shè)接口 (SPI) 總線是一個工作在全雙工模式下的同步串行數(shù)據(jù)鏈路。它可用于在單個主控制器和一個或多個從設(shè)備之間交換數(shù)據(jù)。其簡單的實(shí)施方案只使用四條支持?jǐn)?shù)據(jù)與控制的信號線(圖 1):
雖然表 1 中的引腳名稱來自摩托羅拉開發(fā)的 SPI 標(biāo)準(zhǔn),但具體集成電路的 SPI 端口名稱往往與圖 1 中所示的不同。
SPI 數(shù)據(jù)速率一般在 1 到 70MHz 的范圍內(nèi),字長為從 8 位及 12 位到這兩個值的倍數(shù)。
數(shù)據(jù)傳輸一般由數(shù)據(jù)交換構(gòu)成。在主控制器向從設(shè)備發(fā)送數(shù)據(jù)時,從設(shè)備也向主控制器發(fā)送數(shù)據(jù)。因此主控制器的內(nèi)部移位寄存器和從設(shè)備都采用環(huán)形設(shè)置(圖 2)。
在數(shù)據(jù)交換之前,主控制器和從設(shè)備會將存儲器數(shù)據(jù)加載至它們的內(nèi)部移位寄存器。收到時鐘信號后,主控制器先通過 MOSI 線路時鐘輸出其移位寄存器的 MSB。同時從設(shè)備會讀取位于 SIMO 的主控器第一位元,將其存儲在存儲器中,然后通過 SOMI 時鐘輸出其 MSB。主控制器可讀取位于 MISO 的從設(shè)備第一位元,并將其存儲在存儲器中,以便后續(xù)處理。整個過程將一直持續(xù)到所有位元完成交換,而主控器則可讓時鐘空閑并通過 /SS 禁用從設(shè)備。
除設(shè)置時鐘頻率外,主控制器還可根據(jù)數(shù)據(jù)配置時鐘極性和相位。這兩個分別稱為 OPOL 與 CPHA 的選項(xiàng)可實(shí)現(xiàn)時鐘信號 180 度的相移以及半個時鐘周期的數(shù)據(jù)延遲。圖 3 是相應(yīng)的定時圖。
CPOL = 0 時,時鐘空閑在邏輯 0 位置上:
如果 CPHA = 0,數(shù)據(jù)在 SCK 的上升沿讀取,在下降沿變化。
如果 CPHA = 1,數(shù)據(jù)在 SCK 的下降沿讀取,在上升沿變化。
CPOL = 1 時,時鐘在邏輯為高時空閑:
如果 CPHA = 0,數(shù)據(jù)在 SCK 的下降沿讀取,在上升沿變化。
如果 CPHA = 1,數(shù)據(jù)在 SCK 的上升沿讀取,在下降沿變化。
在 SPI 中,主控制器可與單個或多個從設(shè)備通信。如果是一個單從設(shè)備,從設(shè)備選擇信號可連接至從設(shè)備的本地接地電位,實(shí)現(xiàn)永久接入。對使用多個從設(shè)備的應(yīng)用,可使用兩種配置:獨(dú)立從設(shè)備與菊花鏈從設(shè)備(圖 4)。
要與從設(shè)備單獨(dú)通信,主控制器必須提供多重從設(shè)備選擇信號。該配置通常用于必須單獨(dú)訪問多個模數(shù)轉(zhuǎn)換器 (ADC) 及數(shù)模轉(zhuǎn)換器 (DAC) 的數(shù)據(jù)采集系統(tǒng)中。
菊花鏈從設(shè)備只需要主控制器提供一個從設(shè)備選擇信號,因?yàn)檫@種配置要求所有從設(shè)備同時啟用,以確保數(shù)據(jù)不間斷地流經(jīng)該鏈路中的所有移位寄存器。典型應(yīng)用是工業(yè) I/O 模塊中的級聯(lián)多通道輸入串行器與輸出驅(qū)動器。
責(zé)任編輯:haq
-
控制器
+關(guān)注
關(guān)注
112文章
16444瀏覽量
179170 -
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7134瀏覽量
89454 -
模擬
+關(guān)注
關(guān)注
7文章
1429瀏覽量
83963
發(fā)布評論請先 登錄
相關(guān)推薦
評論