91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

3天內不再提示

SPI、UART、IIC總線之間有什么區(qū)別與聯(lián)系

FPGA之家 ? 來源:CSDN技術社區(qū) ? 作者:EE林 ? 2021-06-21 16:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

SPI 總線

SPI(Serial Peripheral Interface,串行外設接口)是一種高速、全雙工、同步、串行通信總線,3~4線接口,以主從模式工作,收發(fā)獨立,可以實現多個SPI設備互相連接。

提供SPI串行時鐘的SPI設備為SPI主機或主設備(Master),其他設備為SPI從機或從設備(Slave)。

SPI總線由三條信號線組成,分別是SCLK(串行時鐘)、SDI(串行數據輸入)、SDO(串行數據輸出)。當有多個從設備時,還可以增加一條從設備選擇線,CS是控制芯片是否被選中的,這樣就可以實現在同一總線上多個SPI設備互相連接。

如果用GPIO口模擬SPI總線,必須要有一個輸出口(SDO),一個輸入口(SDI),另一個口則視實現的設備類型而定,如果要實現主從設備,則需輸入輸出口,若只實現主設備,則需輸出口即可,若只實現從設備,則只需輸入口即可。

SDI – 主設備數據輸入,從設備數據輸出;

SDO – 主設備數據輸出,從設備數據輸入;

SCLK – 時鐘信號,由主設備產生;

CS – 從設備使能信號,由主設備控制。

SPI 是一種允許一個主設備啟動一個與從設備同步通訊的協(xié)議,從而完成數據的交換。SPI是串行協(xié)議,也就是說數據是一位一位傳輸的,這就是SCLK時鐘線存在的原因,由SCLK提供時鐘脈沖,SDI、SDO則基于此脈沖完成數據傳輸。

數據輸出通過 SDO線,數據在時鐘上升沿或下降沿時改變,在緊接著的下降沿或上升沿被讀取。完成一位數據傳輸,輸入也使用同樣原理。

這樣,在至少8次時鐘信號的改變(上沿和下沿為一次),就可以完成8位數據的傳輸。

這樣的傳輸方式有一個優(yōu)點,與普通的串行通訊不同,普通的串行通訊一次連續(xù)傳送至少8位數據,而SPI允許數據一位一位的傳送,甚至允許暫停,因為SCLK時鐘線由主控設備控制,當沒有時鐘跳變時,從設備不采集或傳送數據。也就是說,主設備通過對SCLK時鐘線的控制可以完成對通訊的控制。

SPI還是一個數據交換協(xié)議:因為SPI的數據輸入和輸出線獨立,所以允許同時完成數據的輸入和輸出。不同SPI設備的實現方式不盡相同,主要是數據改變和采集的時間不同,在時鐘信號上沿或下沿采集有不同定義,具體請參考相關器件的文檔。

最后,SPI接口的一個缺點:沒有指定的流控制,沒有應答機制確認是否接收到數據。

在點對點的通信中,SPI接口不需要進行尋址操作,且為全雙工通信,顯得簡單高效。在多個從設備的系統(tǒng)中,每個從設備需要獨立的使能信號,硬件上比I2C系統(tǒng)要稍微復雜一些。SPI接口主要應用在EEPROM、FLASH、實時時鐘、AD轉換器,還有數字信號處理器和數字信號解碼器之間。

UART 總線

UART(Universal Asynchronous Receiver Transmitter,通用異步收發(fā)器)總線是兩線、全雙工、異步串口,速度慢。比SPI、I2C這兩種同步串口的結構要復雜很多,一般由波特率產生器(產生的波特率等于傳輸波特率的16倍)、UART接收器、UART發(fā)送器組成,硬件上有兩根線,一根用于發(fā)送,一根用于接收。

數據是異步傳輸的,對雙方的時序要求比較嚴格,通信速度也不是很快,在多機通信上面用的最多。如果用GPIO口模擬UART總線,則需一個輸入口,一個輸出口。

UART是用于控制計算機與串行設備的芯片,它提供了RS-232C數據終端設備接口,這樣計算機就可以和調制解調器或其它使用RS-232C接口的串行設備通信了。

大多數計算機包含兩個基于RS232的串口。串口同時也是儀器儀表設備通用的通信協(xié)議;很多GPIB兼容的設備也帶有RS-232口。同時,串口通信協(xié)議也可以用于獲取遠程采集設備的數據。

串口通信的概念非常簡單,串口按位(bit)發(fā)送和接收字節(jié)。盡管比按字節(jié)(byte)的并行通信慢,但是串口可以在使用一根線發(fā)送數據的同時用另一根線接收數據。它很簡單并且能夠實現遠距離通信。

作為接口的一部分,UART還提供以下功能:

將由計算機內部傳送過來的并行數據轉換為輸出的串行數據流;

將計算機外部來的串行數據轉換為字節(jié),供計算機內部使用并行數據的器件使用;

在輸出的串行數據流中加入奇偶校驗位,并對從外部接收的數據流進行奇偶校驗;

在輸出數據流中加入啟停標記,并從接收數據流中刪除啟停標記;

處理由鍵盤或鼠標發(fā)出的中斷信號;

可以處理計算機與外部串行設備的同步管理問題;

有一些比較高檔的UART還提供輸入輸出數據的緩沖區(qū),現在比較新的UART是16550,它可以在計算機需要處理數據前在其緩沖區(qū)內存儲16字節(jié)數據。

IIC 總線

IIC(Inter-Integrated Circuit)總線是雙向、兩線(SCL、SDA)、同步、串行、多主控(multi-master)接口標準,具有競爭檢測和總線仲裁機制,非常適合在器件之間進行近距離、非經常性的數據通信。

在IIC的協(xié)議體系中,傳輸數據時都會帶上目的設備的設備地址,因此可以實現設備組網。

如果用GPIO口模擬IIC總線,并實現雙向傳輸,則需一個輸入輸出口(SDA),另外還需一個輸出口(SCL)。

IIC總線最主要的優(yōu)點是其簡單性和有效性。I2C能用于替代標準的并行總線,能連接各種集成電路和功能模塊。只要求兩條總線線路:一條串行數據線SDA 一條串行時鐘線SCL。

IIC是多主控總線,總線上每一個設備都有一個獨一無二的地址,根據設備自己的能力,任何能夠進行發(fā)送和接收的設備都能像主控器一樣工作,并控制總線。當然,在任何時間點上只能有一個主控,如果兩個或更多主機同時初始化數據傳輸可以通過沖突檢測和仲裁,防止數據被破壞。

一個主控能夠控制信號的傳輸和時鐘頻率。同步時鐘允許器件通過總線以不同的波特率進行通信。同步時鐘可以作為停止和重新啟動串行口發(fā)送的握手方式。

由于接口直接在組件之上,因此I2C總線占用的空間非常小,減少了電路板的空間和芯片管腳的數量,降低了互聯(lián)成本??偩€的長度可高達25英尺,并且能夠以10Kbps的最大傳輸速率支持40個組件。

串行的8位雙向數據傳輸位速率標準模式下可達100kbit/s 快速模式下可達400kbit/s 高速模式下可達3.4Mbit/s

片上的濾波器可以濾去總線數據線上的毛刺波保證數據完整。IIC使用上拉電阻,抗干擾能力較弱,一般用于同一板卡上芯片之間的通信,較少用于遠距離通信。連接到相同總線的IC 數量只受到總線的最大電容400pF 限制。

編輯:jq

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

    關注

    17

    文章

    1885

    瀏覽量

    101296
  • IIC
    IIC
    +關注

    關注

    11

    文章

    309

    瀏覽量

    40641
  • CS
    CS
    +關注

    關注

    0

    文章

    55

    瀏覽量

    25544
  • SDO
    SDO
    +關注

    關注

    0

    文章

    6

    瀏覽量

    6199

原文標題:SPI、UART、IIC總線的區(qū)別與聯(lián)系

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    行星減速機與齒輪減速機什么區(qū)別

    行星減速機與齒輪減速機什么區(qū)別
    的頭像 發(fā)表于 01-04 16:30 ?1456次閱讀
    行星減速機與齒輪減速機<b class='flag-5'>有</b><b class='flag-5'>什么區(qū)別</b>?

    武漢芯源MCU和英飛凌MCU什么區(qū)別

    武漢芯源MCU和英飛凌MCU什么區(qū)別
    發(fā)表于 12-11 06:26

    通信協(xié)議IICSPI最全對比分析

    忘記的是各種總線的用途是什么?!按蟆眳f(xié)議是用于系統(tǒng)外的整個系統(tǒng)之間通信的,“小”協(xié)議是用于系統(tǒng)內各芯片間的通信,沒有跡象表明“大”協(xié)議必要取代“小”協(xié)議。IIC
    發(fā)表于 12-10 06:04

    請問jtag和jlink什么區(qū)別???

    jtag和jlink什么區(qū)別?。?/div>
    發(fā)表于 11-28 06:46

    UART、SPI、I2C 實戰(zhàn)對比:哪個更適合你的項目?

    在嵌入式開發(fā)中,設備之間的通信是繞不開的話題。常見的三種總線接口——UART、SPI、I2C——各有優(yōu)缺點。不同項目需求決定了選擇哪一種協(xié)議最合適。本文結合實戰(zhàn)經驗,逐項對比三者,并附
    的頭像 發(fā)表于 11-24 19:04 ?1190次閱讀
    <b class='flag-5'>UART</b>、<b class='flag-5'>SPI</b>、I2C 實戰(zhàn)對比:哪個更適合你的項目?

    SPI、I2C、UART三種串行總線區(qū)別與對比

    1)概念定義 SPI(Serial Peripheral Interface:串行外設接口); I2C(INTER IC BUS:意為IC之間總線) UART(Universa
    發(fā)表于 11-20 07:19

    微波雷達和毫米波雷達什么區(qū)別

    微波雷達和毫米波雷達什么區(qū)別 前言:不知道大家有沒有發(fā)現,各種雷達模塊的使用開始逐漸加入各種智能家居產品了,像人來燈亮,人走燈滅這種雷達感應的產品早幾年就開始進入市場了,還有各種感應開關等產品
    的頭像 發(fā)表于 10-30 16:56 ?2046次閱讀
    微波雷達和毫米波雷達<b class='flag-5'>有</b><b class='flag-5'>什么區(qū)別</b>

    數字化與信息化什么區(qū)別聯(lián)系

    數字化與信息化是緊密相關但又有區(qū)別的兩個概念,它們在推動社會和經濟發(fā)展中扮演著不同角色。以下從定義、核心目標、技術基礎、應用范圍、實施路徑及相互聯(lián)系六個方面進行詳細分析: 一、定義差異 數字化
    的頭像 發(fā)表于 10-11 16:48 ?1467次閱讀
    數字化與信息化<b class='flag-5'>有</b><b class='flag-5'>什么區(qū)別</b>和<b class='flag-5'>聯(lián)系</b>

    Re-Driver 和 Re-Timer 什么區(qū)別

    Re-Driver 和 Re-Timer 什么區(qū)別?
    發(fā)表于 08-21 06:14

    知識分享 | 功能安全vsSOTIF:區(qū)別聯(lián)系

    )在確保出行安全方面發(fā)揮著至關重要的作用。那么,功能安全和SOTIF之間什么區(qū)別?它們在哪些特性上又存在聯(lián)系?
    的頭像 發(fā)表于 08-06 13:53 ?1696次閱讀
    知識分享 | 功能安全vsSOTIF:<b class='flag-5'>區(qū)別</b>與<b class='flag-5'>聯(lián)系</b>

    請問CYW2019B2的SPI1與SPI2什么區(qū)別?

    請問: CYW2019B2的SPI1與SPI2什么區(qū)別SPI接口工作于Slave方式,接收外設的數據。如果設為
    發(fā)表于 07-08 07:51

    CY7C65214和CY7C65211/3/5什么區(qū)別

    CY7C65214 和其他 USB 串行橋接控制器之間什么區(qū)別:CY7C65211、CY7C65213 和 CY7C65215? 社區(qū)有很多關于USB串行橋接控制器的信息;但CY7C65214什么都沒有。
    發(fā)表于 05-29 06:49

    GD32與STM32什么區(qū)別

    電子發(fā)燒友網站提供《GD32與STM32什么區(qū)別.docx》資料免費下載
    發(fā)表于 04-03 17:27 ?0次下載

    HSE子系統(tǒng)HSE_H、HSE_M和HSE_B之間什么區(qū)別

    我想知道 HSE 子系統(tǒng) HSE_H、HSE_M 和 HSE_B 之間什么區(qū)別? 區(qū)別是它們在哪個板上運行,還是也存在功能差異?
    發(fā)表于 03-20 07:37

    請問stm32u545這種spi帶boot的和不帶boot的什么區(qū)別?

    請問這種spi帶boot的和不帶boot的什么區(qū)別
    發(fā)表于 03-10 07:16