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線檢...