《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 完全弄懂SPI接口
完全弄懂SPI接口
摘要: 本文介紹了SPI接口的特點(diǎn),,傳輸方式,時(shí)鐘及其優(yōu)缺點(diǎn),。
關(guān)鍵詞: 接口IC SPI 接口 時(shí)鐘
Abstract:
Key words :

  SPI(Serial Peripheral Interface,,串行外設(shè)接口)是Motorola公司提出的一種同步串行數(shù)據(jù)傳輸標(biāo)準(zhǔn),在很多器件中被廣泛應(yīng)用,。

 

  1. 接口

 

  SPI接口經(jīng)常被稱為4線串行總線,,以主/從方式工作,數(shù)據(jù)傳輸過(guò)程由主機(jī)初始化,。如圖1所示,,其使用的4條信號(hào)線分別為:

  1) SCLK:串行時(shí)鐘,用來(lái)同步數(shù)據(jù)傳輸,,由主機(jī)輸出,;

  2) MOSI:主機(jī)輸出從機(jī)輸入數(shù)據(jù)線;

  3) MISO:主機(jī)輸入從機(jī)輸出數(shù)據(jù)線,;

  4) SS:片選線,,低電平有效,由主機(jī)輸出,。

  在SPI總線上,,某一時(shí)刻可以出現(xiàn)多個(gè)從機(jī),但只能存在一個(gè)主機(jī),,主機(jī)通過(guò)片選線來(lái)確定要通信的從機(jī),。這就要求從機(jī)的MISO口具有三態(tài)特性,,使得該口線在器件未被選通時(shí)表現(xiàn)為高阻抗。

 

  SPI接口線

 

  2. 數(shù)據(jù)傳輸

 

  在一個(gè)SPI時(shí)鐘周期內(nèi),,會(huì)完成如下操作:

  1) 主機(jī)通過(guò)MOSI線發(fā)送1位數(shù)據(jù),,從機(jī)通過(guò)該線讀取這1位數(shù)據(jù);

  2) 從機(jī)通過(guò)MISO線發(fā)送1位數(shù)據(jù),,主機(jī)通過(guò)該線讀取這1位數(shù)據(jù),。

  這是通過(guò)移位寄存器來(lái)實(shí)現(xiàn)的。如圖2所示,,主機(jī)和從機(jī)各有一個(gè)移位寄存器,,且二者連接成環(huán)。隨著時(shí)鐘脈沖,,數(shù)據(jù)按照從高位到低位的方式依次移出主機(jī)寄存器和從機(jī)寄存器,,并且依次移入從機(jī)寄存器和主機(jī)寄存器。當(dāng)寄存器中的內(nèi)容全部移出時(shí),,相當(dāng)于完成了兩個(gè)寄存器內(nèi)容的交換,。

 

  SPI數(shù)據(jù)傳輸?shù)膶?shí)現(xiàn)

 

  3. 時(shí)鐘極性和時(shí)鐘相位

 

  在SPI操作中,最重要的兩項(xiàng)設(shè)置就是時(shí)鐘極性(CPOL或UCCKPL)和時(shí)鐘相位(CPHA或UCCKPH),。時(shí)鐘極性設(shè)置時(shí)鐘空閑時(shí)的電平,,時(shí)鐘相位設(shè)置讀取數(shù)據(jù)和發(fā)送數(shù)據(jù)的時(shí)鐘沿,。

  主機(jī)和從機(jī)的發(fā)送數(shù)據(jù)是同時(shí)完成的,,兩者的接收數(shù)據(jù)也是同時(shí)完成的。所以為了保證主從機(jī)正確通信,,應(yīng)使得它們的SPI具有相同的時(shí)鐘極性和時(shí)鐘相位,。

  舉例來(lái)說(shuō),分別選取MSP430控制器和OLED驅(qū)動(dòng)SH1101A為主從機(jī),,圖3和圖4為它們的SPI時(shí)序,。由圖4可知,SH1101A的SPI時(shí)鐘空閑時(shí)為高電平,,并且在后時(shí)鐘沿接收數(shù)據(jù),,則MSP430控制器SPI的設(shè)置應(yīng)與此保持一致。從圖3中可以看出,,要使得時(shí)鐘在空閑時(shí)為高電平,,應(yīng)將UCCKPL置1;要使得在后時(shí)鐘沿接收數(shù)據(jù),,應(yīng)將UCCKPH清零,。

 

  圖3.jpg

  圖4.jpg

 

  4. 優(yōu)缺點(diǎn)

 

  SPI接口具有如下優(yōu)點(diǎn):

  1) 支持全雙工操作;

  2) 操作簡(jiǎn)單,;

  3) 數(shù)據(jù)傳輸速率較高,。

  同時(shí),,它也具有如下缺點(diǎn):

  1) 需要占用主機(jī)較多的口線(每個(gè)從機(jī)都需要一根片選線);

  2) 只支持單個(gè)主機(jī),。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。