SPI,是英語 Serial Peripheral interface 的縮寫,中文全稱是串行外圍設(shè)備接口。是 Motorola 所研發(fā)的一種串行通信協(xié)議。SPI接口主要應(yīng)用在 EEPROM,F(xiàn)LASH,實時時鐘,AD 轉(zhuǎn)換器,還有數(shù)字信號處理器和數(shù)字信號解碼器之間。SPI通信協(xié)議是一種高速的,全雙工,同步的通信總線協(xié)議??梢灾С职僬?bit/s 的通信速率。
SPI的通信原理十分簡單,它是以主從方式來工作,這種模式通常是:一個主設(shè)備和一個或多個從設(shè)備,由主設(shè)備發(fā)起通信。需要至少 4 根線,然而事實上 3 根也可以(單向傳輸時)。4 根線分別是:
MOSI – 主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入(MOSI:master output slave input)
MISO – 主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出(MISO:master input slave output)
CS /NSS – 從設(shè)備使能信號(片選),由主設(shè)備控制
接線實例:
時序圖:
SPI有四種工作模式,由 CPOL 和 CPHA 決定。
CPOL: 時鐘極性, 表示 SPI總線在空閑時, 時鐘信號是高電平還是低電平。 如果 CPOL 被設(shè)為 1, 空閑時 SCK 時鐘信號為高電平。 當 CPOL 被設(shè)為 0 時則正好相反。
CPOL = 0: SCK idle phase is low;
CPOL = 1: SCK idle phase is high;
CPHA: 時鐘相位, 表示 SPI 進行數(shù)據(jù)采樣時,SCK 是上升沿還是下降沿。 若 CPHA 被設(shè)置為 1, 則 SPI 設(shè)備在時鐘信號變?yōu)橄陆笛貢r觸發(fā)數(shù)據(jù)采樣, 在上升沿時發(fā)送數(shù)據(jù)。當 CPHA 被設(shè)為 0 時也正好相反。
CPHA = 0: Output data at negedge of clock while receiving data at posedge of clock;
CPHA = 1: Output data at posedge of clock while receiving data at negedge of clock;
編輯:hfy
-
SPI
+關(guān)注
關(guān)注
17文章
1804瀏覽量
96013 -
AD轉(zhuǎn)換器
+關(guān)注
關(guān)注
4文章
250瀏覽量
42244 -
數(shù)字信號處理器
+關(guān)注
關(guān)注
5文章
482瀏覽量
27884 -
CPOL
+關(guān)注
關(guān)注
0文章
9瀏覽量
10252 -
時鐘信號
+關(guān)注
關(guān)注
4文章
468瀏覽量
29235
發(fā)布評論請先 登錄
用SPI總線實現(xiàn)DSP和MCU之間的高速通信
基于SPI通信方式的OLED顯示

通俗理解STM32 SPI通信(主從雙機SPI通信)

SPI通信協(xié)議

通信協(xié)議:SPI

通信協(xié)議(SPI)

SD卡系列之spi模式---spi通信

評論