陜西做網(wǎng)站社會化媒體營銷
關(guān)于SPI
SPI(串行外設(shè)接口)是板載設(shè)備間通信接口之一。它是由摩托羅拉公司(飛思卡爾半導(dǎo)體)推出的。由于其簡單性和通用性,它被納入各種外圍設(shè)備中,并與飛利浦I2C總線并列。 SPI的三線或四線信號數(shù)量比IIC的兩線多,但傳輸速率可以升至20 Mbps或更高,具體取決于設(shè)備的能力(比IIC快5-50倍)。因此,它主要用于需要盡可能高數(shù)據(jù)傳輸速率的應(yīng)用,ADC、DAC或通信IC。
SPI的結(jié)構(gòu)
SPI的基本結(jié)構(gòu)如上圖所示。主設(shè)備和從設(shè)備通過SCLK(串行時鐘)、MISO(主輸入從輸出)和MOSI(主輸出從輸入)三個信號線連接,兩個8位移位寄存器的內(nèi)容為與主設(shè)備驅(qū)動的移位時鐘交換。另外,除上述三個之外的SS(從機選擇)信號用于同步數(shù)據(jù)包或字節(jié)邊界的開始,并用于同時實現(xiàn)多從機配置。大多數(shù)從機設(shè)備為 SPI 接口分配不同的引腳名稱,例如 DI、DO 和 CS。對于單向傳輸器件,例如DAC和單通道 ADC,可以省略任一數(shù)據(jù)線。數(shù)據(jù)位首先以 MSB 方式移位。
當將一些從屬設(shè)備連接到 SPI 時,從屬設(shè)備并行連接,主設(shè)備的CS信號連接到每個從屬設(shè)備。由CS信號選擇的從屬設(shè)備的數(shù)據(jù)輸出被啟用,而未選擇的設(shè)備與MISO 斷開連接。
SPI的傳輸時序
對于SPI,數(shù)據(jù)移位和數(shù)據(jù)鎖存分別在相反的時鐘沿進行,移位和鎖存操作分開可以避免兩個操作之間的關(guān)鍵時序,從而減輕芯片設(shè)計和電路板設(shè)計的時序考慮。但另一方面,由于時鐘極性和時鐘相位的組合,存在四種操作模式,主設(shè)備必須將其SPI接口配置為從設(shè)備所需的SPI模式。
模式0
時鐘極性(CPOL)為0,時鐘相位(CPHA)為0,SCK在空閑狀態(tài)時為低電平,數(shù)據(jù)的采樣和傳輸分別發(fā)生在SCK的上升沿和下降沿。即正脈沖,鎖定,然后移位,如下圖:
模式1
時鐘極性(CPOL)為0,時鐘相位(CPHA)為1,SCK在空閑狀態(tài)仍保持低電平,但是數(shù)據(jù)的采樣和傳輸分別發(fā)生在SCK的下降沿和上升沿。即:正脈沖,先移動,然后鎖定,如下圖:
模式2
時鐘極性(CPOL)為1,時鐘相位(CPHA)為0,SCK信號在空閑狀態(tài)時為高電平,數(shù)據(jù)在SCK的下降沿被采樣,并在上升沿傳輸。即:負脈沖,鎖定,然后移動。如下圖:
模式3
時鐘極性(CPOL)為1,時鐘相位(CPHA)為1,SCK在空閑狀態(tài)為高電平,與模式2相反,數(shù)據(jù)在SCK的上升沿被采樣,在下降沿進行傳輸。即:負脈沖。移位,然后鎖存。如下圖:
總結(jié)
這四種模式的主要區(qū)別在于如何在時鐘信號的不同邊緣采樣和改變數(shù)據(jù)。CPOL參數(shù)規(guī)定了SCK時鐘信號在空閑狀態(tài)時的電平,而CPHA參數(shù)則規(guī)定了數(shù)據(jù)是在SCK時鐘的上升沿還是下降沿被采樣。