SPI 協議詳解

2021-08-09 11:39:13 字數 2221 閱讀 3728

1、什麼是spi?

spi是序列外設介面(seria

種同步序列接**術,是一種高速的,全雙工,同步的通訊匯流排。

2、spi優點

支援全雙工通訊

通訊簡單

資料傳輸速率塊

3、缺點

沒有指定的流控制,沒有應答機制確認是否接收到資料,所以跟iic匯流排協議比較在資料

可靠性上有一定的缺陷。

4、特點

1):高速、同步、全雙工、非差分、匯流排式

2):主從機通訊模式

5、協議通訊時序詳解

1):spi的通訊原理很簡單,它以主從方式工作,這種模式通常有乙個主裝置和乙個或多

個從裝置,需要至少4根線,事實上3根也可以(單向傳輸時)。也是所有基於spi的裝置共

有的,它們是sdi(資料輸入)、sdo(資料輸出)、sclk(時鐘)、cs(片選)。

(1)sdo/mosi – 主裝置資料輸出,從裝置資料輸入;

(2)sdi/miso – 主裝置資料輸入,從裝置資料輸出;

(3)sclk – 時鐘訊號,由主裝置產生;

(4)cs/ss – 從裝置使能訊號,由主裝置控制。當有多個從裝置的時候,因為每個從設

備上都有乙個片選引腳接入到主裝置機中,當我們的主裝置和某個從裝置通訊時將需

要將從裝置對應的片選引腳電平拉低或者是拉高。

2):需要說明的是,我們spi通訊有4種不同的模式,不同的從裝置可能在出廠是就是配

置為某種模式,這是不能改變的;但我們的通訊雙方必須是工作在同一模式下,所以我們

可以對我們的主裝置的spi模式進行配置,通過cpol(時鐘極性)和cpha(時鐘相位)來

控制我們主裝置的通訊模式,具體如下:

mode0:cpol=0,cpha=0

mode1:cpol=0,cpha=1

mode2:cpol=1,cpha=0

mode3:cpol=1,cpha=1

時鐘極性cpol是用來配置sclk的電平出於哪種狀態時是空閒態或者有效態,時鐘相位cpha

是用來配置資料取樣是在第幾個邊沿:

cpol=0,表示當sclk=0時處於空閒態,所以有效狀態就是sclk處於高電平時

cpol=1,表示當sclk=1時處於空閒態,所以有效狀態就是sclk處於低電平時

cpha=0,表示資料取樣是在第1個邊沿,資料傳送在第2個邊沿

cpha=1,表示資料取樣是在第2個邊沿,資料傳送在第1個邊沿

例如:cpol=0,cpha=0:此時空閒態時,sclk處於低電平,資料取樣是在第1個邊沿,也就是

sclk由低電平到高電平的跳變,所以資料取樣是在上公升沿,資料傳送是在下降沿。

cpol=0,cpha=1:此時空閒態時,sclk處於低電平,資料傳送是在第1個邊沿,也就是

sclk由低電平到高電平的跳變,所以資料取樣是在下降沿,資料傳送是在上公升沿。

cpol=1,cpha=0:此時空閒態時,sclk處於高電平,資料採集是在第1個邊沿,也就是

sclk由高電平到低電平的跳變,所以資料採集是在下降沿,資料傳送是在上公升沿。

cpol=1,cpha=1:此時空閒態時,sclk處於高電平,資料傳送是在第1個邊沿,也就是

sclk由高電平到低電平的跳變,所以資料採集是在上公升沿,資料傳送是在下降沿。

需要注意的是:我們的主裝置能夠控制時鐘,因為我們的spi通訊並不像uart或者iic通訊

那樣有專門的通訊週期,有專門的通訊起始訊號,有專門的通訊結束訊號;所以我們的

spi協議能夠通過控制時鐘訊號線,當沒有資料交流的時候我們的時鐘線要麼是

保持高電平要麼是保持低電平。

6、內部工作機制

 sspsr 是 spi 裝置內部的移位暫存器(shift register). 它的主要作用是根據 spi

時鐘訊號狀態, 往 sspbuf 裡移入或者移出資料, 每次移動的資料大小由 bus-width 以

及 channel-width 所決定.

SPI匯流排協議

spi是乙個環形匯流排結構 由ss cs sck sdi sdo構成,其時序其實很簡單,主要是在sck的控制下,兩個雙向移位暫存器進行資料交換。假設下面的8位暫存器裝的是待傳送的資料10101010,上公升沿傳送 下降沿接收 高位先傳送。那麼第乙個上公升沿來的時候 資料將會是sdo 1 暫存器 01...

SPI協議介紹

spi協議介紹 一 基本資訊 spi synchronous peripheral inte ce 同步外圍裝置介面 是序列介面的一種。該介面協議由motorola公司提出並形成規範。1 資料線 spi介面包含四條線 cs sck mosi miso,含義和作用如下 1 cs 片選訊號,低電平有效,...

SPI協議總結

spi協議是由摩托羅拉公司提出的通訊協議 serial peripheral inte ce 即序列外圍裝置介面,是一種高速全雙工的通訊匯流排。它被廣泛地使用在要求通訊速率較高的場合 標號1處,nss訊號線由高變低,是spi通訊的起始訊號。nss是每個從機各自獨佔的訊號線,當從機檢在自己的nss線檢...