STM32學(xué)習(xí)013_SPI串行外設(shè)接口通信
SPI(Serial Periphreal Iterface-串行外設(shè)接口)總線系統(tǒng)是一種同步串行外設(shè)接口,使MCU與各種外圍接口以串行方式進(jìn)行通訊交換信息,SPI有三個寄存器,控制寄存器SPCR,狀態(tài)寄存器SPSR,數(shù)據(jù)寄存器SPDR,外圍設(shè)備包括FlashRam,網(wǎng)絡(luò)控制器,LCD顯示驅(qū)動器,AD轉(zhuǎn)換器和MCU etc.接口一共用4條線,串行時鐘線(SCLK),主機(jī)輸入/從機(jī)輸出數(shù)據(jù)線MISO,主機(jī)輸出/從機(jī)輸入數(shù)據(jù)線MOSI,和低電平有效的從機(jī)選擇線NSS.
SPI接口主要應(yīng)用在EEPROM,flash 實時時鐘,AD轉(zhuǎn)換器,還有數(shù)字信號處理器和數(shù)字信號解碼器之間。
數(shù)據(jù)傳輸?shù)倪^程:在主器件的移位脈沖下,數(shù)據(jù)按位傳輸,低位在前,高位在后,為全雙工通信,整體傳輸速度比IIC要快,速度可達(dá)幾Mbps.
優(yōu)點,信號線少,協(xié)議簡單,相對數(shù)據(jù)速率高。缺點:沒有指定的流控制,沒有應(yīng)答機(jī)制,確認(rèn)是否接收到數(shù)據(jù)。
SPI有4種工作模式,各個工作模式的不同在于SCLK 的不同,具體工作由CPOL,CPHA決定。
使用SPI通訊,參考方法如下:
第一步:設(shè)置主,從模式,設(shè)置MSTR ,SPE(使能位);
第二步:設(shè)置(時鐘)相位和極性,
第三步:設(shè)置數(shù)據(jù)幀的格式;(8位數(shù)據(jù)位,1位停止位,設(shè)置高位MSB在先,還是低位(LSB)在先);





