SPI通訊協議(SPI匯流排)學習

2021-08-09 08:18:16 字數 2180 閱讀 7887

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匯流排)學習

spi是序列外設介面 seria 種同步序列接 術,是一種高速的,全雙工,同步的通訊匯流排。2 spi優點 支援全雙工通訊 通訊簡單 資料傳輸速率塊 3 缺點 沒有指定的流控制,沒有應答機制確認是否接收到資料,所以跟iic匯流排協議比較在數 據 可靠性上有一定的缺陷。4 特點 1 高速 同步 全雙工...

SPI通訊協議(SPI匯流排)學習

1 什麼是spi?spi是序列外設介面 serial peripheral inte ce 的縮寫。是 motorola 公司推出的一 種同步序列接 術,是一種高速的,全雙工,同步的通訊匯流排。2 spi優點 支援全雙工通訊 通訊簡單 資料傳輸速率塊 3 缺點 沒有指定的流控制,沒有應答機制確認是否...

SPI通訊協議(SPI匯流排)解析

1 什麼是spi?spi是序列外設介面 serial peripheral inte ce 的縮寫。是 motorola 公司推出的一 種同步序列接 術,是一種高速的,全雙工,同步的通訊匯流排。2 spi優點 支援全雙工通訊 通訊簡單 資料傳輸速率塊 3 缺點 沒有指定的流控制,沒有應答機制確認是否...