日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SPI协议的介绍

發(fā)布時(shí)間:2023/12/20 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SPI协议的介绍 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

學(xué)習(xí)內(nèi)容:

學(xué)習(xí)SPI協(xié)議記錄


學(xué)習(xí)清單:

提示:這里可以添加要學(xué)的內(nèi)容

例如:

  • SPI協(xié)議的介紹
  • 三根線還是四根線
  • 兩個(gè)概念四種模式
  • SPI時(shí)序圖
  • SPI優(yōu)缺點(diǎn)
  • SPI和IIC的對(duì)比

  • 學(xué)習(xí)詳細(xì)內(nèi)容:

    1.SPI協(xié)議的介紹

    SPI是串口外設(shè)接口(Serial Peripheral Interface)的縮寫,是一種高速的,全雙工,同步的通信總線,并且只占用四根線,節(jié)約了芯片的管腳,同時(shí)為PCB的布局上節(jié)省空間,提供方便,正是出于這種簡單易用的特性,越來越多的芯片集成了這種通信協(xié)議。

    2.三根線還是四根線

    SPI一般都是默認(rèn)4線制Motorola SPI協(xié)議,即有四根線,分別是:SCLK、MOSI、MISO和CS共4根數(shù)據(jù)線,標(biāo)準(zhǔn)4線制的好處是可以實(shí)現(xiàn)數(shù)據(jù)的全雙工傳輸,當(dāng)只有一個(gè)主機(jī)和一個(gè)從設(shè)備時(shí),只需要一個(gè)CS、多個(gè)從機(jī)需要多個(gè)CS。(CS片選信號(hào)有的也叫做SS線),多從機(jī)模式,通常每個(gè)從機(jī)需要一條單獨(dú)的SS線,如下圖所示:

    CS是chip select,即從設(shè)備使能信號(hào),由主設(shè)備控制。當(dāng)總線上有多個(gè)從設(shè)備時(shí),主設(shè)備如果需要和某個(gè)從設(shè)備通信,就將該設(shè)備的片選引腳拉低使能。


    即通過指定使能NSS,就能與對(duì)應(yīng)的從機(jī)進(jìn)行通信。

    以上圖中的4根線分別是:

    • SCLK:Synchronous CLock,同步時(shí)鐘信號(hào),時(shí)鐘頻率即SPI速率,和SPI模式有關(guān)
    • MOSI:Master output slave input,主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入
    • MISO:Master input slave output,主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出
    • CS:chip select,從機(jī)設(shè)備選擇,低電平有效

    3線制SPI,根據(jù)不同的應(yīng)用場景,主要有以下2中類型:

    • 只有3根線:SCLK,MOSI和CS,沒有MISO數(shù)據(jù)線,適用于單工通訊,主機(jī)只發(fā)送或只接收從機(jī)的數(shù)據(jù)
    • 只有3根線:SCLK,SDIO和CS,這里的SDIO作為雙向端口,適用于半雙工通訊,比如ADI的多款A(yù)DC芯片都支持雙向傳輸。

    3.兩個(gè)概念四種模式

    既然是要進(jìn)行數(shù)據(jù)的傳輸,雙方就要明確從機(jī)在什么時(shí)刻去采樣主機(jī)發(fā)出的數(shù)據(jù),主機(jī)在什么時(shí)刻去讀取從機(jī)發(fā)來的數(shù)據(jù)。
    CPOL(Clock Polarity)時(shí)鐘的極性,規(guī)約了SPI總線在空閑時(shí),時(shí)鐘信號(hào)是高電平還是低電平;

    • CPOL=0 表示時(shí)鐘空閑時(shí)為低電平
    • CPOL=1 表示時(shí)鐘空閑時(shí)為高電平

    CPHA(Clock Phase)時(shí)鐘的相位,規(guī)約SPI設(shè)備是在時(shí)鐘上升沿還是下降沿觸發(fā)數(shù)據(jù)采樣。

    • CPHA=0 表示數(shù)據(jù)在SCLK時(shí)鐘上升沿被采樣,在SCLK時(shí)鐘下降沿切換(有的說法叫“在時(shí)鐘信號(hào)SCLK的第一個(gè)跳變沿采樣”)
    • CPHA=1表示數(shù)據(jù)在SCLK時(shí)鐘下降沿被采樣,在SCLK時(shí)鐘上升沿切換(有的說法叫“在時(shí)鐘信號(hào)SCLK的第二個(gè)跳變沿采樣”)

    時(shí)鐘極性和時(shí)鐘相位的不同組合,所以有了SPI總線傳輸?shù)?種模式

    模式1:CPOL=0,CPHA=0

    模式1的示例圖:即時(shí)鐘空閑時(shí)為低電平,在時(shí)鐘的上升沿被采樣,下降沿切換

    模式2:CPOL=0,CPHA=1
    模式3:CPOL=1,CPHA=0
    模式4:CPOL=1,CPHA=1

    其余三個(gè)模式也是同理

    4.SPI時(shí)序圖

    當(dāng)以模式1為工作模式時(shí):

    先是將CS片選信號(hào)拉低,選中要通信的從設(shè)備,然后通過MOSI和MISO這兩根數(shù)據(jù)線進(jìn)行通信,MOSI數(shù)據(jù)線發(fā)出了0xD2這個(gè)數(shù)據(jù)給從設(shè)備,同時(shí)從設(shè)備也通過MISO線給主設(shè)備返回了0x66這個(gè)數(shù)據(jù)。由于SPI是全雙工的,所以讀寫時(shí)序可以一起完成。

    5.SPI的優(yōu)缺點(diǎn)

    SPI的優(yōu)勢(shì)

    • 全雙工串行通信
    • 高速數(shù)據(jù)傳輸速率
    • 簡單的軟件配置
    • 及其靈活的數(shù)據(jù)傳輸,不限于8位,它可以是任意大小的字
    • 非常簡單的硬件結(jié)構(gòu),從站不需要唯一地址(與IIC不同),從機(jī)使用主機(jī)時(shí)鐘,不需要精密時(shí)鐘振蕩器/晶振(與UART不同),不需要收發(fā)器(與CAN不同)

    SPI的缺點(diǎn)

    • 沒有硬件從機(jī)應(yīng)答信號(hào)(主機(jī)可能在不知情的情況下無處發(fā)送)
    • 通常僅支持一個(gè)主設(shè)備
    • 需要更多的引腳(與IIC不同)
    • 沒有定義硬件級(jí)別的錯(cuò)誤檢查協(xié)議
    • 與RS-232與CAN總線相比,只能支持非常短的距離

    6.SPI和IIC的對(duì)比

    • SPI是全雙工,而IIC是半雙工
    • IIC支持多主機(jī)多從機(jī),SPI只能有一個(gè)主機(jī)
    • 從GPIO占用上來看,IIC占用更少的GPIO,更節(jié)省資源
    • SPI的數(shù)據(jù)位寬更靈活,可以根據(jù)需要選擇多位數(shù)數(shù)據(jù)寬度
    • SPI協(xié)議沒有響應(yīng)機(jī)制,主機(jī)無法得知從機(jī)是否接收到所發(fā)的數(shù)據(jù),如果不采用一些方法的話可能會(huì)導(dǎo)致數(shù)據(jù)丟幀
    • 正是因?yàn)闆]有復(fù)雜的響應(yīng)機(jī)制,SPI協(xié)議可以做到非常高的速率,每一個(gè)SCLK都可以進(jìn)行數(shù)據(jù)的傳輸,通過引入CRC校驗(yàn)等校驗(yàn)方法,可以即高速傳輸數(shù)據(jù),又能保持?jǐn)?shù)據(jù)的準(zhǔn)確度。
    • IIC通過期間地址來選擇從機(jī),從機(jī)數(shù)量的增加不會(huì)導(dǎo)致GPIO的增加,而SPI通過CS片選信號(hào)選擇從機(jī),每增加一個(gè)從機(jī)就要多占用一個(gè)GPIO,當(dāng)然也可以通過加入譯碼器來實(shí)現(xiàn)多從機(jī)控制
    • 兩者大多數(shù)都應(yīng)用與板內(nèi)器件短距離通訊

    學(xué)習(xí)資料:

    參考資料1
    參考資料2
    參考資料3

    總結(jié)

    以上是生活随笔為你收集整理的SPI协议的介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。