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