簡介
SPI接口是Motorola 首先提出的全雙工三線同步串行外圍接口,採用主從模式(Master Slave)架構;支持多slave模式應用,一般僅支持單Master。
時鐘由Master控制,在時鐘移位脈衝下,數據按位傳輸,高位在前,低位在後(MSB first);SPI接口有2根單向數據線,爲全雙工通信,目前應用中的數據速率可達幾Mbps的水平。
SPI接口共有4根信號線,分別是:設備選擇線、時鐘線、串行輸出數據線、串行輸入數據線。
(1)MOSI:主器件數據輸出,從器件數據輸入
(2)MISO:主器件數據輸入,從器件數據輸出
(3)SCLK :時鐘信號,由主器件產生
(4)/SS:從器件使能信號,由主器件控制
模式
在芯片資料上極性和相位一般表示爲CPOL(Clock POLarity)和CPHA(Clock PHAse), 極性和相位組合成4種工作模式。
CPOL–SPI空閒時的時鐘信號電平(1:高電平, 0:低電平) | CPHA–SPI在時鐘第幾個邊沿採樣(1:第二個邊沿開始, 0:第一個邊沿開始) | |
---|---|---|
MODE0 | 0 | 0 |
MODE1 | 0 | 1 |
MODE2 | 1 | 0 |
MODE3 | 1 | 1 |
CPOL: SPI空閒時的時鐘信號電平(1:高電平, 0:低電平)
CPHA: SPI在時鐘第幾個邊沿採樣(1:第二個邊沿開始, 0:第一個邊沿開始)
MODE0和MODE3最常用。
各個模式的時序如下: