SPI全稱是串行外設(shè)接口(Serial Peripheral Interface),是由Motorola提出的一種全雙工(全雙工指可以同時(shí)(瞬時(shí))進(jìn)行信號(hào)的雙向傳輸(A→B且B→A))同步串行通信接口,通信波特率可以高達(dá)5Mbps,但具體速度大小取決于SPI硬件。
SPI總線只需四條線就可以完成MCU與各種外圍器件的通訊。
1)MOSI(SDI )–Master數(shù)據(jù)輸出,Slave數(shù)據(jù)輸入;
2)MISO (SDO)– Master數(shù)據(jù)輸入,Slave數(shù)據(jù)輸出;
3)SClK– 時(shí)鐘信號(hào),由Master產(chǎn)生;
4)/CS– Slave使能信號(hào),由Master控制。
SPI通信就是采用這樣的主從模式(Master-Slave)架構(gòu),一般為一個(gè)Master和多個(gè)Slave的應(yīng)用模式。切記,誰(shuí)為主,誰(shuí)提供SCLK時(shí)鐘信號(hào)。
SPI通訊就需要這四根線。其中,CS是控制芯片是否被選中的,也就是說只有片選信號(hào)為預(yù)先規(guī)定的使能信號(hào)時(shí),對(duì)此芯片的操作才有效。這就允許在同一總線上連接多個(gè)SPI設(shè)備成為可能。接下來(lái)再負(fù)責(zé)通訊的3根線就可以了。
SPI也是串行通訊協(xié)議,也就是說數(shù)據(jù)是一位一位的傳輸?shù)摹_@就是SCLK時(shí)鐘線存在的原因,由SCLK提供時(shí)鐘脈沖,SDI,SDO則基于此脈沖完成數(shù)據(jù)傳輸。操作時(shí)序很簡(jiǎn)單,如下:
看見時(shí)序圖了,就知道怎么通訊了。SPI接口在Master控制下產(chǎn)生的從器件使能信號(hào)和時(shí)鐘信號(hào),兩個(gè)雙向移位寄存器按位傳輸進(jìn)行數(shù)據(jù)交換,傳輸數(shù)據(jù)高位在前,低位在后(MSB first)。在SCK的下降沿上數(shù)據(jù)改變,上升沿一位數(shù)據(jù)被存入移位寄存器。
換個(gè)說法,SPI是一個(gè)環(huán)形總線結(jié)構(gòu),主要是在sck的控制下,兩個(gè)雙向移位寄存器進(jìn)行數(shù)據(jù)交換。對(duì)于主機(jī)來(lái)說,上升沿發(fā)送、下降沿接收、高位先發(fā)送。
上升沿到來(lái)的時(shí)候,sdi上的電平將被發(fā)送到從設(shè)備的寄存器中。從M_Sbuff寄存器的7位,發(fā)送到S_Sbuff寄存器的0位;
下降沿到來(lái)的時(shí)候,sd噢上的電平將被接收到主設(shè)備的寄存器中。從S_Sbuff寄存器的7位,發(fā)送到M_Sbuff寄存器的0位;
一個(gè)完整的傳送周期是16位,即兩個(gè)字節(jié),因?yàn)椋紫戎鳈C(jī)要發(fā)送命令過去,然后從機(jī)根據(jù)主機(jī)的命令準(zhǔn)備數(shù)據(jù),主機(jī)在下一個(gè)8位時(shí)鐘周期才把數(shù)據(jù)讀回來(lái)。
SPI總線比IIC總線傳輸數(shù)據(jù)省事。之前用過的IIC通訊,又有起始位,又有停止位的。SPI比較豪爽,對(duì)于主機(jī)來(lái)說,有上升沿就寫一位,有下降沿就讀一位。因?yàn)檫@樣,SPI能夠不等8位數(shù)據(jù)都傳完就停止。沒有了主機(jī)發(fā)出的SCLK脈沖,就不再有數(shù)據(jù)交換了。需要注意的是:我們的主設(shè)備能夠控制時(shí)鐘,因?yàn)槲覀兊腟PI通信并不像UART或者IIC通信那樣有專門的通信周期,有專門的通信起始信號(hào),有專門的通信結(jié)束信號(hào);所以我們的SPI協(xié)議能夠通過控制時(shí)鐘信號(hào)線,當(dāng)沒有數(shù)據(jù)交流的時(shí)候我們的時(shí)鐘線要么是保持高電平要么是保持低電平。
-
SPI總線
+關(guān)注
關(guān)注
4文章
104瀏覽量
27942
發(fā)布評(píng)論請(qǐng)先 登錄
電子電路百科全書
看完這篇,SPI其實(shí)也很簡(jiǎn)單嘛(可下載)
對(duì)于一款新的BSP如何添加SPI驅(qū)動(dòng)

I2C總線與SPI總線的比較
百度百科啟動(dòng)“繁星計(jì)劃”
LMP91200評(píng)估板上的兩組spi可以掛在同一spi總線上嗎?
半導(dǎo)體術(shù)語(yǔ)小百科

中國(guó)硬科技創(chuàng)新風(fēng)向標(biāo)!E維智庫(kù)攜手明星企業(yè)強(qiáng)強(qiáng)合作,解讀硬科技未來(lái)

鴻蒙智行再迎OTA升級(jí),車載小藝化身私人用車顧問、百科導(dǎo)師

名單公布!【書籍評(píng)測(cè)活動(dòng)NO.49】大模型啟示錄:一本AI應(yīng)用百科全書
瀚海微SD NAND之SD 協(xié)議(37)SPI總線保護(hù)和讀寫

評(píng)論