SPI,是英語Serial Peripheral Interface的縮寫,顧名思義就是串行外圍設備接口。SPI,是一種高速的,全雙工,同步的通訊總線,而且在芯片的管腳上只佔用四根線,節約了芯片的管腳,同時爲PCB的佈局上節省空間,提供方便,正是出於這種簡單易用的特性,如今愈來愈多的芯片集成了這種通訊協議。
SPI是一個環形總線結構,由ss(cs)、sck、sdi、sdo構成,其時序其實很簡單,主要是在sck的控制下,兩個雙向移位寄存器進行數據交換。web
SPI時序圖詳解-SPI接口在模式0下輸出第一位數據的時刻
編程
SPI接口在模式0下輸出第一位數據的時刻
SPI接口有四種不一樣的數據傳輸時序,取決於CPOL和CPHL這兩位的組合。圖1中表現了這四種時序,
時序與CPOL、CPHL的關係也能夠從圖中看出。架構
CPOL是用來決定SCK時鐘信號空閒時的電平,CPOL=0,空閒電平爲低電平,CPOL=1時,佈局
空閒電平爲高電平。CPHA是用來決定採樣時刻的,CPHA=0,在每一個週期的第一個時鐘沿採樣,性能
CPHA=1,在每一個週期的第二個時鐘沿採樣。spa
圖4中,注意看CS和MISO信號。咱們能夠看出,CS信號有效後,從器件馬上輸出了bit1(值爲1)。3d
一般咱們進行的spi操做都是16位的。圖5記錄了第一個字節和第二個字節間的相互銜接的過程。
第一個字節的最後一位在SCK的上升沿被採樣,隨後的SCK降低沿,從器件就輸出了第二個字節的第一位。orm
SPI總線協議介紹(接口定義,傳輸時序)blog
1、技術性能
SPI接口是Motorola 首先提出的全雙工三線同步串行外圍接口,採用主從模式(Master Slave)架構;支持多slave模式應用,通常僅支持單Master。
時鐘由Master控制,在時鐘移位脈衝下,數據按位傳輸,高位在前,低位在後(MSB first);SPI接口有2根單向數據線,爲全雙工通訊,目前應用中的數據速率可達幾Mbps的水平。
-------------------------------------------------------
2、接口定義
SPI接口共有4根信號線,分別是:設備選擇線、時鐘線、串行輸出數據線、串行輸入數據線。
接口