SPI

1. SPI介紹

1) 串行外圍設備接口Serial Peripheral Interface),是Motorola公司推出的三線同步通信接口。

2) 特點:高速、全雙工、同步通信     四根管腳利於PCB佈局節省空間

① 同步:有同步時鐘

② 異步:無同步時鐘,同行有起始位和終止位來同步傳輸數據(字符與字         符之間之間的時間間隔可變,不需嚴格限制時間關係)

③ 主從通訊:採用主從模式(Master Slave)架構;支持多slave模式應        用,一般僅支持單Master。

 

3) 組成(4根線):CS(片選)、SCLK(時鐘)、MOSI(主機發送/從機接收)、MISO(主機接收/從機發送)構成。

4) 工作模式:4種,時鐘信號的相位與極性,使用廣泛的是SPI0,SPI3

如果 CPOL=0,串行同步時鐘的空閒狀態爲低電平;如果 CPOL=1,串行同步時鐘的空閒狀態爲高電平。時鐘相位(CPHA)能夠配置用於選擇兩種不同的傳輸協議之一進行數據傳輸。如果 CPHA=0,在串行同步時鐘的第一個跳變沿(上升或下降)數據被採樣;如果 CPHA=1,在串行同步時鐘的第二個跳變沿(上升或下降)數據被採樣。 

5) 用途:EEPROM、FLASH、實時時鐘、AD轉換等

2. STM32_103-SPI

1) 特點:可以當主機或從機工作,可以同時發送或接收串行數據;提供頻率可編程時鐘;衝突保護-寫衝突保護、總線競爭保護。

2) STM32板上的SPI控制器---作爲主機---控制---外擴FALSH-W25Q6。

3) 結構圖:

 

原理:兩個移位寄存器在同步時鐘信號下進行移位,互換數據(先發高位)

內部環形結構

 

4) 物理層連接

PA5  :   SCK       -- 輸出    : 複用推輓

PA6  :   MISO    ---輸入    : 浮空輸入

PA7  :   MOSI    ---輸出    : 複用推輓

PB0 :   CS         --輸出    : 推輓輸出 --I/O引腳直接驅動

原理圖:

 

5) SPI主模式配置步驟

① 設置 BR[2:0] 位以定義串行時鐘波特率(參見 SPI_CR1 寄存器)。

② 選擇 CPOL 和 CPHA 位,以定義數據傳輸和串行時鐘之間的關係

③ 設置 DFF 位,以定義 8 或 16 位數據幀格式

④ 配置 SPI_CR1 寄存器中的 LSBFIRST 位以定義幀格式

⑤ 如果 NSS 引腳配置成輸入,在 NSS 硬件模式下, NSS 引腳在整個  字節發送序列期間都連接到高電平信號;在 NSS 軟件模式下,將   SPI_CR1 寄存器中的 SSM 和 SSI 位置1。如果 NSS 引腳配置成輸 出,只應將 SSOE 位置 1。

⑥   SPI_CR2 中的 FRF 位置 1,以選擇 TI 協議進行串行通信。

⑦  MSTR 和 SPE 位必須置 1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章