chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

超全面!SPI通信協(xié)議詳解

億佰特物聯(lián)網(wǎng)應(yīng)用專家 ? 2023-08-14 10:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

什么是SPI?

SPI的英文全稱為Serial Peripheral Interface,顧名思義為串行外設(shè)接口。SPI是一種同步串行通信接口規(guī)范,主要應(yīng)用于嵌入式系統(tǒng)中的短距離通信。該接口由摩托羅拉在20世紀80年代中期開發(fā),后發(fā)展成了行業(yè)規(guī)范。

SPI簡介?

SPI是一種高速的、全雙工的、同步的通信總線,并且至多僅需使用4根線,節(jié)約了芯片的管腳,SPI主要應(yīng)用于EEPROM、FLASH、ADC、DAC等芯片,還有數(shù)字信號處理器和數(shù)字信號解碼器之間。SPI設(shè)備之間采用全雙工模式通信,是一個主機和一個或者多個從機的主從模式。主機負責(zé)初始化幀,這個數(shù)據(jù)傳輸幀可以用于讀與寫兩種操作,片選線可以從多個從機選擇一個來響應(yīng)主機的請求。SPI接口定義如下表:1f98df42-3a47-11ee-bbcf-dac502259ad0.png由上表也可以看出當(dāng)SPI設(shè)備間通信時,數(shù)據(jù)線應(yīng)該是MOSI連接MOSI,MISO連接MISO,SCLK與SCLK相連,而不是像串口那樣TX、RX進行反接。當(dāng)只有單一SPI從機設(shè)備時,如果從機設(shè)備允許的話,可直接將CS/SS線固定在低電平。然而類似于MAX1242這款需要CS/SS線的下降沿來觸發(fā)的芯片,則必須將CC/SS線與主機相連。如下圖,為一主一從連接方式。
1fd45cde-3a47-11ee-bbcf-dac502259ad0.png對于多個從機設(shè)備時,則每個從機都需要一根CS/SS線來與主機相連,從而達到主機能與任一從機通信的目的。如下圖,為一主多從的連接方式。1febb0e6-3a47-11ee-bbcf-dac502259ad0.png大多數(shù)從機設(shè)備都有著三態(tài)邏輯的特性,因此當(dāng)設(shè)備未被選中時,它們的MISO信號線會變成高阻抗狀態(tài)(電氣斷開)。沒有三態(tài)輸出的設(shè)備則需外接三態(tài)緩沖器才能與其他的從機設(shè)備共享SPI總線。

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

在SPI通信中,SPI主機設(shè)備以從機設(shè)備支持的頻率通過SCLK線給到SPI從機設(shè)備,這點也意味著從機是無法主動向主機發(fā)送數(shù)據(jù)的,只能主機輪詢向從機發(fā)或者從機設(shè)備主動通過一個IO口來告知主機數(shù)據(jù)到達。在SPI每個時鐘周期內(nèi),都會進行一次全雙工數(shù)據(jù)的傳輸。主機通過MOSI線上發(fā)送1bit時,從機也會在讀取到之后通過MISO線發(fā)送1bit數(shù)據(jù)出去。這說明,即使只進行單工通信,也會保持此通信順序。SPI傳輸通常涉及到兩個給定了字長的移位寄存器。例如在主機、從機中的8bit的移位寄存器。它們以虛擬環(huán)形拓撲連接,數(shù)據(jù)通常先從最高有效位被移出。在時鐘沿,主機和從機都移出1bit數(shù)據(jù)從傳輸線上給到對方。在下一個時鐘邊沿來到時,雙方的接收器再對傳輸線上的該bit進行采樣,并將其設(shè)置為移位寄存器的新的最低有效位。在寄存器位被移出和移入后,主機和從機交換了寄存器值。如果需要交換更多數(shù)據(jù),則重新加載移位寄存器并重復(fù)該過程。傳輸可以持續(xù)任意數(shù)量的時鐘周期。完成后,主機停止切換時鐘信號。如下圖,為主從機之間的交互時的移位寄存器示意圖。20317522-3a47-11ee-bbcf-dac502259ad0.png其中上圖的通信流程如下:
1.SPI主機首先現(xiàn)將SS或CS線拉低,以此來告知SPI從機通信開始。2.主機通過發(fā)送SCLK時鐘信號,來告知從機即將進行的讀寫操作。這里的SCLK時鐘信號是由SPI的模式來決定是高電平還是低電平有效的,這點在稍后會進行介紹。3.主機(Master)將要發(fā)送的數(shù)據(jù)寫到發(fā)送數(shù)據(jù)緩存區(qū)(Memory),緩存區(qū)經(jīng)過移位寄存器(0~7),串行移位寄存器通過MOSI信號線將字節(jié)一位一位的移出去傳送給從機,同時MISO接口接收到的數(shù)據(jù)經(jīng)過移位寄存器一位一位的移到接收緩存區(qū)。4.從機(Slave)也將自己的串行移位寄存器(0~7)中的內(nèi)容通過MISO信號線返回給主機。同時通過MOSI信號線接收主機發(fā)送的數(shù)據(jù),這樣,兩個移位寄存器中的內(nèi)容就被交換。

SPI通信的4種工作模式

SPI通信中有4種不同的操作模式,不同的從機設(shè)備可能在出廠時就被設(shè)置好了某種模式,并且無法更改。但是SPI通信必須處于同一種模式下才能進行。因此我們應(yīng)該對自己手里的SPI主機設(shè)備進行模式的配置,也就是通過CPOL(時鐘極性)和CPHA(時鐘相位)來控制SPI主設(shè)備的通信模式,具體如下:時鐘極性(CPOL)定義了SCLK時鐘線空閑狀態(tài)時的電平:1.CPOL=0,即SCLK=0,表示SCLK時鐘信號線在空閑狀態(tài)時的電平為低電平,因此有效狀態(tài)為高電平。2.CPOL=1,即SCLK=1,表示SCLK時鐘信號線在空閑狀態(tài)時的電平為高電平,因此有效狀態(tài)為低電平。時鐘相位(CPHA)定義了數(shù)據(jù)位相對于時鐘線的時序(即相位):1.CPHA=0,即表示輸出(out)端在上一個時鐘周期的后沿改變數(shù)據(jù),而輸入(in)端在時鐘周期的前沿(或不久之后)捕獲數(shù)據(jù)。輸出端保持數(shù)據(jù)有效直到當(dāng)前時鐘周期的尾部邊緣。對于第一個時鐘周期來說,第一位的數(shù)據(jù)必須在時鐘前沿之前出現(xiàn)在MOSI線上。也就是一個CPHA=0的周期包括半個時鐘空閑和半個時鐘置位的周期。2.CPHA=1,即表示輸出(out)端在當(dāng)前時鐘周期的前沿改變數(shù)據(jù),而輸入(in)端在時鐘周期的后沿(或不久之后)捕獲數(shù)據(jù)。輸出端保持數(shù)據(jù)有效直到下一個時鐘周期的前沿。對于最后一個時鐘周期來說,從機設(shè)備在片選信號消失之前保持MISO信號線有效。也就是一個CHPA=1的周期包括半個時鐘置位和半個時鐘空閑的周期。注意:此處的前沿和后沿的意思表示在每個周期中第一個出現(xiàn)的邊沿和最后一個出現(xiàn)的邊沿??偟膩碚f則為:當(dāng)時鐘為正向時鐘時,時鐘線的上升沿為前沿,時鐘的下降沿為后沿,反之。如下表,為SPI通信的4種模式:204103ca-3a47-11ee-bbcf-dac502259ad0.png下圖顯示了時鐘極性和相位的時序圖。紅線表示時鐘的前沿,藍線表示時鐘的后沿。
2071ac96-3a47-11ee-bbcf-dac502259ad0.png

SPI協(xié)議的優(yōu)缺點

SPI的優(yōu)點在于它有著比I2C更高的吞吐量,不被最大時鐘速度所限制,可實現(xiàn)潛在的高速、極為簡單的硬件接口,外圍電路使用的上拉電阻是比I2C協(xié)議更少的,這意味著它具有比I2C的功耗更低、從機的時鐘來源來自主機設(shè)備,無需新增精密振蕩器、從機不需要唯一的地址、相對于并行接口而言,使用的引腳數(shù)目大大減少等優(yōu)點。但同時有著一定的缺點,例如SPI沒有帶內(nèi)尋址、當(dāng)使用多個不同模式的從機設(shè)備時,主機設(shè)備切換模式時重新初始化,會使得訪問從機設(shè)備速度變慢、SPI從機設(shè)備沒有硬件流控,只能通過主機自主的延遲下個時鐘周期到來的時間、僅能在短距離通信等缺點。但能在避免SPI的缺點的方向來應(yīng)用SPI的話,SPI的優(yōu)點讓它遠遠優(yōu)于其他協(xié)議。's

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6363

    瀏覽量

    139848
  • 協(xié)議
    +關(guān)注

    關(guān)注

    2

    文章

    618

    瀏覽量

    40939
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1876

    瀏覽量

    100525
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    深入解析SPI通信:高速全雙工,如何連接微控制器與萬千外設(shè)?啟明云端樂鑫代理

    你是否曾好奇,手機觸摸屏如何靈敏響應(yīng),溫度傳感器數(shù)據(jù)如何被讀取,或是存儲芯片如何快速讀寫?其背后,往往離不開一種高效而常見的通信協(xié)議——SPI。本期啟明云端一起揭開SPI的神秘面紗
    的頭像 發(fā)表于 01-13 18:03 ?270次閱讀
    深入解析<b class='flag-5'>SPI</b><b class='flag-5'>通信</b>:高速全雙工,如何連接微控制器與萬千外設(shè)?啟明云端樂鑫代理

    通信協(xié)議IIC與SPI最全對比分析

    現(xiàn)今,在低端數(shù)字通信應(yīng)用領(lǐng)域,我們隨處可見IIC(Inter-Integrated Circuit)和 SPI(Serial Peripheral Interface)的身影。原因是這兩種通信協(xié)議
    發(fā)表于 12-10 06:04

    FPGA實現(xiàn)基于SPI協(xié)議的Flash驅(qū)動控制芯片擦除

    本篇博客具體包括SPI協(xié)議的基本原理、模式選擇以及時序邏輯要求,采用FPGA(EPCE4),通過SPI通信協(xié)議,對flash(W25Q16BV)存儲的固化程序進行芯片擦除操作。
    的頭像 發(fā)表于 12-02 10:00 ?2389次閱讀
    FPGA實現(xiàn)基于<b class='flag-5'>SPI</b><b class='flag-5'>協(xié)議</b>的Flash驅(qū)動控制芯片擦除

    SPI、I2C、I2S、UART:通信協(xié)議解釋

    不能?本文一次梳理清楚。 一、通信協(xié)議快速對照表 協(xié)議 全稱 線數(shù) 通信方式 速率 應(yīng)用場景 特點 SPI Serial Peripheral Interface 4根常用線(MOSI
    的頭像 發(fā)表于 11-18 10:53 ?425次閱讀

    SPI、I2C、I2S、UART:通信協(xié)議對比表

    ,有的不能?本文一次梳理清楚。一、通信協(xié)議快速對照表協(xié)議全稱線數(shù)通信方式速率應(yīng)用場景特點SPISerialPeripheralInterface4根常用線(MOSI
    的頭像 發(fā)表于 11-17 10:53 ?1548次閱讀
    <b class='flag-5'>SPI</b>、I2C、I2S、UART:<b class='flag-5'>通信協(xié)議</b>對比表

    Xilinx FPGA串行通信協(xié)議介紹

    Xilinx FPGA因其高性能和低延遲,常用于串行通信接口設(shè)計。本文深入分析了Aurora、PCI Express和Serial RapidIO這三種在Xilinx系統(tǒng)設(shè)計中關(guān)鍵的串行通信協(xié)議。介紹了它們的特性、優(yōu)勢和應(yīng)用場景,以及如何在不同需求下選擇合適的
    的頭像 發(fā)表于 11-14 15:02 ?2399次閱讀
    Xilinx FPGA串行<b class='flag-5'>通信協(xié)議</b>介紹

    創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—MQTT通信協(xié)議案例

    本文圍繞創(chuàng)龍科技研發(fā)的評估板,提供 MQTT 通信協(xié)議開發(fā)案例指導(dǎo)。涵蓋 MQTT 協(xié)議核心概念,詳解案例功能(如數(shù)據(jù)發(fā)布與訂閱)、環(huán)境搭建(MQTT 庫安裝、Broker 配置)、測試步驟(連接
    的頭像 發(fā)表于 10-28 15:23 ?2400次閱讀
    創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—MQTT<b class='flag-5'>通信協(xié)議</b>案例

    分布式能源并網(wǎng)的通信協(xié)議有哪些?

    在分布式能源(如光伏、儲能、微電網(wǎng))并網(wǎng)場景中,通信協(xié)議需滿足 設(shè)備互聯(lián)、數(shù)據(jù)傳輸、遠程控制、調(diào)度協(xié)同 等核心需求,不同協(xié)議因設(shè)計目標不同,適用于從設(shè)備層到調(diào)度層的不同層級。以下按 “國際標準協(xié)議
    的頭像 發(fā)表于 09-18 16:40 ?1315次閱讀
    分布式能源并網(wǎng)的<b class='flag-5'>通信協(xié)議</b>有哪些?

    工業(yè)通信協(xié)議都有哪些?#三格電子

    通信協(xié)議
    三格電子科技
    發(fā)布于 :2025年08月28日 10:35:26

    哪些協(xié)議是工業(yè)通信協(xié)議?#三格電子

    通信協(xié)議
    三格電子科技
    發(fā)布于 :2025年08月27日 14:16:07

    HIPERFACE DSL編碼器通信協(xié)議介紹

    在工業(yè)自動化和智能制造快速發(fā)展的今天,編碼器在各類設(shè)備中扮演著關(guān)鍵角色,精準的位置和速度反饋是確保系統(tǒng)高效、穩(wěn)定運行的基礎(chǔ)。HIPERFACE DSL作為一種先進的編碼器通信協(xié)議,正逐漸成為眾多工業(yè)
    的頭像 發(fā)表于 05-23 14:16 ?1945次閱讀
    HIPERFACE DSL編碼器<b class='flag-5'>通信協(xié)議</b>介紹

    Modbus 轉(zhuǎn) Profinet:工業(yè)通信協(xié)議的橋梁

    1. 引言 在工業(yè)自動化領(lǐng)域,Modbus 和 Profinet 是兩種廣泛使用的通信協(xié)議。Modbus 是一種串行通信協(xié)議,常用于連接工業(yè)電子設(shè)備,而 Profinet 是一種基于以太網(wǎng)的工業(yè)
    的頭像 發(fā)表于 02-24 11:11 ?818次閱讀
    Modbus 轉(zhuǎn) Profinet:工業(yè)<b class='flag-5'>通信協(xié)議</b>的橋梁

    PCM4201與DSP之間的通信協(xié)議是什么?

    關(guān)于PCM4201 與 DSP 之間的通信協(xié)議
    發(fā)表于 02-08 08:17

    iic協(xié)議spi協(xié)議的區(qū)別

    I2C協(xié)議SPI協(xié)議的區(qū)別 1. 通信方式 I2C :是一種多主機、多從機的通信協(xié)議,使用兩條線(數(shù)據(jù)線SDA和時鐘線SCL)進行
    的頭像 發(fā)表于 02-05 11:28 ?4946次閱讀

    Dali通信的工作原理 如何使用Dali通信協(xié)議

    一、引言 Dali(Digital Addressable Lighting Interface,數(shù)字可尋址照明接口)是一種用于照明控制產(chǎn)品之間雙向通信協(xié)議。通過Dali通信協(xié)議,可以實現(xiàn)對照
    的頭像 發(fā)表于 01-31 10:33 ?5022次閱讀