SPI通信協(xié)議由摩托羅拉公司于20世紀80年代中期開發(fā)而成,包括SD卡、液晶顯示器、一般閃存等等都在使用SPI進行通信。
SPI作為串行通信接口脫穎而出的原因很多,全雙工比I2C傳輸速率更高,推挽輸出接口能夠減少走線分叉,能夠保證在高速傳輸下信號的完整性,傳輸協(xié)議更加靈活,信息幀大小可以任意調節(jié),不需要上拉電阻,功耗可以更低,外圍電路和軟件配置都更簡單。
同時SPI的缺點也很明顯,SPI通常僅支持一個主設備,傳輸距離短,一般只適合板內信號傳輸,沒有硬件級別的錯誤檢查協(xié)議,無法內部尋址,多重設備時需要額外的片選信號線。
SPI總線包括四條邏輯線
SPI有兩種接線方式,第一種是常規(guī)的獨立從機配置,每個從機都需要一條單獨的CS線,當主機要和特定的從機進行通訊時,將相應的CS信號線拉低,并保持其他CS信號線為高。
同時因為從機的MISO引腳在同一條信號線上,因此要求未被選擇的從機的MISO引腳要配置為高阻態(tài)輸出。
SP的第二種接線方式為菊花鏈配置,我們一般將信號線以串行的方式從一個設備依次傳到下一個設備,直到數(shù)據(jù)到達目標設備的數(shù)據(jù)傳輸方式稱為菊花鏈。
菊花鏈最大的缺點是如果從機出現(xiàn)單點故障時,低于該設備優(yōu)先級的從機就掉線了,距離主機越遠的從機獲得服務的優(yōu)先級就越低。如果需要設置從線檢測器并安排好從今優(yōu)先級。
如果某個從機超時并及時處理,防止單點故障造成整個鏈路崩潰。
菊花鏈模式充分使用了SPI移位寄存器的功能,每個從機在下一個時鐘周期將輸入數(shù)據(jù)復制到輸出。
SPI可以根據(jù)時鐘極性CKP和時鐘向性CKE配置前四種模式。
CKP用來配置時鐘的默認狀態(tài),CP=0時空閑電平為低,電平0,CKP=1時空閑電平為高,電平1。
CKE用來配置在哪個時鐘邊沿進行數(shù)據(jù)采樣,CKE=0時,在時鐘信號SCK的第一個跳變沿采樣,CT=1時,在時鐘信號SCK的第二個跳變沿采樣。
SPI是一種同步通信的總線協(xié)議,數(shù)據(jù)線根據(jù)不同的配置在時鐘的上升沿或下降沿進行采樣。
SPI通信的持續(xù)過程如下,主機先將對應從機的CS信號拉低,通知從機開始建立連接,數(shù)據(jù)接收端檢測到時鐘的邊緣信號之后,就立即開始讀取數(shù)據(jù)線上的信號。
因為SPI是全雙工的,主機在發(fā)送數(shù)據(jù)的同時也在接收數(shù)據(jù),主機可以通過查詢的方式來判斷從機是否有數(shù)據(jù)需要發(fā)送,如果有,主機會繼續(xù)發(fā)送數(shù)據(jù)來獲取從機想要發(fā)送的數(shù)據(jù),之后從機只需要丟掉這些無效數(shù)據(jù)即可。
好了,以上就是SIP通信協(xié)議的全部內容,喜歡的話麻煩大家點贊收藏哦。
審核編輯 :李倩
-
通信協(xié)議
+關注
關注
28文章
883瀏覽量
40309 -
SPI
+關注
關注
17文章
1706瀏覽量
91590 -
I2C
+關注
關注
28文章
1487瀏覽量
123768
原文標題:2022年SPI通信協(xié)議原理講解
文章出處:【微信號:電子技術控,微信公眾號:電子技術控】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論