在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            博客專欄

            EEPW首頁 > 博客 > SPI接口說明及原理

            SPI接口說明及原理

            發(fā)布人:yingjian 時間:2022-08-18 來源:工程師 發(fā)布文章
            1簡介

            SPI:Serial Peripheral Interface,是串行外設接口。


            SPI是由摩托羅拉于 1985 年前后開發(fā),是一種適用于短距離、設備到設備通信的同步串行接口。


            從那時起,這種接口就已成為許多半導體制造商,特別是微控制器(MCU)和微處理器(MPU)采用的事實標準。


            2SPI接口

            SPI總線是一種4線總線,通常有一個主設備和一個或多個從設備,需要至少4根線,事實上3根也可以。


            MOSI:Master Output Slave Input,主設備數(shù)據(jù)輸出,從設備數(shù)據(jù)輸入;

            MISO:Master Input Slave Output,主設備數(shù)據(jù)輸入,從設備數(shù)據(jù)輸出;

            SCLK:Serial Clock,時鐘信號,由主設備產(chǎn)生;

            SS:Slave Select,從設備選擇信號,由主設備控制;

            圖片


            上面的SS信號,也可以理解為CS信號,一般是低電平有效,所以也是NSS(非)信號;


            CS:Chip Select,片選信號(從設備使能/選擇信號),由主設備控制;


            一主一從

            最基本的SPI通信就是一主一從,比如:一個STM32作為主機,一個W25Q16(SPI Flash)作為從機。還有兩個MCU之間進行SPI通信等。 

            圖片


            上圖例子是主機發(fā)送一個字節(jié)數(shù)據(jù)(0x53),從機應答一個字節(jié)數(shù)據(jù)(0x46)。


            一主多從

            SPI可以一主一從(一個主機,一個從機),但也可以一主多從。一主多從常見有兩種連接方式。


            A.常規(guī)

            通常,每個從機都需要一條單獨的SS線,要與指定的從機通信,將該從機的SS線設為低電平,并將其余的保持為高電平即可。

            圖片


            B.一條SS信號

            某些應用只需要一條NSS即可(比如:移位寄存器),對于這種布局,數(shù)據(jù)從一個從設備移位到另一個從設備。

            圖片


            3SPI數(shù)據(jù)傳輸

            SPI的通信比較簡單,一個時鐘傳輸一位數(shù)據(jù)(主機 -> 從機,或者從機 -> 主機)。


            SPI時鐘

            理論上SPI的時鐘頻率可以做到很大,一般幾MHz~幾百MHz,拿常見的W25Q16來說,SPI最高支持80MHz。


            SPI通信速率要結(jié)合實際情況,不能超過主機或從機支持的最大時鐘頻率。


            SPI數(shù)據(jù)

            SPI的數(shù)據(jù)分兩個方向:

            MOSI:主機 -> 從機

            MISO:從機 -> 主機


            SPI通信有一個“缺點”:沒有指定的流控制,沒有應答機制確認是否接收到數(shù)據(jù)。


            可以理解為:不知道是什么時候主機發(fā)給從機,什么時候從機發(fā)給主機,到底該發(fā)多少字節(jié)數(shù)據(jù)等。


            此時,需要通信的主機和從機達成約定,一般由主機進行控制讀寫的操作。


            比如下面這個讀寫SPI Flash數(shù)據(jù)的操作:

            圖片


            前面1字節(jié)是指令,緊接著再3字節(jié)(24位)地址,都是由主機發(fā)送給從機。之后,主機讀取數(shù)據(jù)(由從機發(fā)送出來)。


            時鐘極性和相位

            除了設置時鐘頻率外,主機還必須配置與數(shù)據(jù)有關的時鐘極性和相位。

            圖片


            CPOL確定時鐘的極性,極性可以通過簡單的逆變器進行轉(zhuǎn)換。


            CPHA確定相對于時鐘脈沖的數(shù)據(jù)位的時序(即相位)。


            一般集成有SPI外設的處理器,都有SPI相關的配置寄存器,拿STM32來說,參考手冊里面有詳細介紹SPI配置的信息。


            建議大家結(jié)合時序圖理解,不要死記硬背。


            *博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



            關鍵詞: SPI接口

            相關推薦

            技術專區(qū)

            關閉