linux SPI驅動——spi協議(一)

 一:SPI簡介以及應用佈局

      SPI, Serial Perripheral Interface, 串行外圍設備接口, 是 Motorola 公司推出的一種同步串行接口技術. SPI 總線在物理上是經過接在外圍設備微控制器(PICmicro) 上面的微處理控制單元 (MCU) 上叫做同步串行端口(Synchronous Serial Port) 的模塊(Module)來實現的, 它容許 MCU 以全雙工的同步串行方式, 與各類外圍設備進行高速數據通訊.spa

      SPI 主要應用在 EEPROM, Flash, 實時時鐘(RTC), 數模轉換器(ADC), 數字信號處理器(DSP) ,一些sensor,以及數字信號解碼器之間. 它在芯片中只佔用四根管腳 (Pin) 用來控制以及數據傳輸, 節約了芯片的 pin 數目, 同時爲 PCB 在佈局上節省了空間. 正是出於這種簡單易用的特性, 如今愈來愈多的芯片上都集成了 SPI技術.接口

 

二:SPI協議原理ip

1).SPI 設備在進行通訊的過程當中, Master 設備和 Slave 設備之間通常有四根線經過 SDO 和 SDI 管腳,進行數據的交互,  SCK 傳輸時鐘信號,CS片選選中待控制的芯片。同步

       SCK/SCL,  Serial Clock, 主要的做用是 Master 設備往 Slave 設備傳輸時鐘信號, 控制數據交換的時機以及速率;ast

       SS/CS,  Slave Select/Chip Select, 用於 Master 設備片選 Slave 設備, 使被選中的 Slave 設備可以被 Master 設備所訪問,通常低電平表示選中原理

      SDO/MOSI,  Serial Data Output/Master Out Slave In, 在 Master 上面也被稱爲 Tx-Channel, 做爲數據的出口, 主要用於 SPI 設備發送數據;技術

      SDI/MISO,  Serial Data Input/Master In Slave Out, 在 Master 上面也被稱爲 Rx-Channel, 做爲數據的入口, 主要用於SPI 設備接收數據;通信

 

2).SPI四種模式數據

SPI的相位(CPHA)和極性(CPOL)分別能夠爲0或1,對應的4種組合構成了SPI的4種模式(mode)
            Mode 0       CPOL=0, CPHA=0
            Mode 1       CPOL=0, CPHA=1
            Mode 2       CPOL=1, CPHA=0 
            Mode 3       CPOL=1, CPHA=1

時鐘極性CPOL: 即SPI空閒時,時鐘信號SCLK的電平(1:空閒時高電平; 0:空閒時低電平)
時鐘相位CPHA: 即SPI在SCLK第幾個邊沿開始採樣(0:第一個邊沿開始; 1:第二個邊沿開始)

例子:

SCLK 上升沿數據鎖存。
SCLK 降低沿數據變化。

這種狀況能夠工做在0,3兩種模式

相關文章
相關標籤/搜索