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

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

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

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

I2C通訊為什么要用開漏輸出和上拉電阻?

朱老師物聯(lián)網(wǎng)大講堂 ? 2024-05-16 08:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、I2C總線簡介

I2C(Inter-Integrated Circuit)總線是一種雙向串行通信總線,由兩根線組成:SDA(數(shù)據(jù)線)和SCL(時鐘線)。這兩根線都是雙向的,并且是開漏輸出的,這意味著每個設(shè)備都可以將線拉低(Ground),但不能將線拉高(Vcc)。這種設(shè)計使得多個設(shè)備可以共享同一條總線,以進行通信。

b9fa7726-1318-11ef-9118-92fbcf53809c.png

二、I2C接口接外部上拉電阻的原因

I2C(Inter-Integrated Circuit)接口在使用時需要連接外部上拉電阻,主要原因包括以下幾點:
開漏(Open-drain)或開集電極(Open-collector)輸出:I2C總線上的設(shè)備如主設(shè)備和從設(shè)備使用開漏或開集電極的輸出方式來驅(qū)動總線。這意味著,設(shè)備只能將線路拉低(接地),而不能直接將線路拉高至供電電壓。因此,需要外部上拉電阻來將線路拉高。多主設(shè)備配置:I2C允許多個主設(shè)備存在于同一總線上。為了防止輸出沖突(例如,一個設(shè)備嘗試將線路拉高,而另一個設(shè)備嘗試將線路拉低),I2C設(shè)計為只能通過外部上拉電阻來將信號線拉高,從而簡化了總線管理。邏輯狀態(tài)的穩(wěn)定和可靠性:外部上拉電阻確保在沒有設(shè)備主動驅(qū)動線路時,數(shù)據(jù)線(SDA)和時鐘線(SCL)能穩(wěn)定地保持在高電平狀態(tài)。這有助于提高信號的可靠性和減少誤讀。靈活的電壓級別:由于I2C設(shè)備可以支持不同的邏輯電平,使用外部上拉電阻可以方便地匹配總線電平到特定的系統(tǒng)電壓,例如3.3V或5V等,從而使得不同電壓等級的設(shè)備可以共存于同一總線。電氣特性的優(yōu)化:通過選擇合適的上拉電阻值,可以優(yōu)化總線的電氣特性,如上拉速率、功耗和噪聲容限。電阻值太低會增加功耗和可能導(dǎo)致總線驅(qū)動器過載,而電阻值太高則可能導(dǎo)致信號上升時間過長,影響總線速率。所以綜上所述,外部上拉電阻在I2C通信中發(fā)揮著至關(guān)重要的作用,保證了通信的穩(wěn)定性和靈活性。在I2C通信中,使用推挽(push-pull)輸出并不是標(biāo)準(zhǔn)的實現(xiàn)方式,因為這種輸出方式與I2C設(shè)計的開漏(open-drain)或開集電極(open-collector)輸出方式存在本質(zhì)上的差異。下面詳細解釋為什么通常不使用推挽輸出:總線沖突的風(fēng)險:I2C總線設(shè)計為多主設(shè)備和多從設(shè)備可以共享同一總線。如果使用推挽輸出,當(dāng)一個設(shè)備試圖將總線拉高而另一個設(shè)備試圖將其拉低時,將會發(fā)生總線沖突,可能導(dǎo)致設(shè)備損壞。信號完整性問題:推挽輸出可以同時驅(qū)動高電平和低電平,這在總線空閑和活躍時都維持總線狀態(tài)。然而,這種方式缺乏開漏輸出的靈活性,例如在總線檢測和仲裁過程中動態(tài)改變控制權(quán),這是I2C協(xié)議重要的一部分。電平匹配和靈活性降低:使用推挽輸出意味著所有設(shè)備必須在相同的電壓級別上操作,這限制了不同電壓級別設(shè)備的互操作性。相比之下,開漏輸出允許通過外部上拉電阻選擇適當(dāng)?shù)碾妷杭墑e,以匹配不同設(shè)備的電壓要求。仲裁和時鐘同步問題:I2C支持總線仲裁和時鐘同步,這依賴于能夠檢測總線上的高電平和低電平狀態(tài)。如果總線使用推挽輸出,總線上的電平狀態(tài)將由最后一個發(fā)送信號的設(shè)備完全控制,從而使得仲裁和同步變得困難或不可能。因此,盡管理論上可以通過某些特定設(shè)計讓I2C總線上的設(shè)備使用推挽輸出,但這樣做通常需要額外的硬件支持和復(fù)雜的總線管理策略,且違背了I2C協(xié)議的基本設(shè)計原則。如果需要在I2C總線上實現(xiàn)類似推挽的功能,通常建議使用其他通信協(xié)議,如SPI或UART,這些協(xié)議本身就設(shè)計為支持推挽輸出。

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

    關(guān)注

    5

    文章

    366

    瀏覽量

    31670
  • I2C
    I2C
    +關(guān)注

    關(guān)注

    28

    文章

    1556

    瀏覽量

    131262
  • 串行通信
    +關(guān)注

    關(guān)注

    4

    文章

    608

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    用這種方法來估測CH552的電阻可以嗎?

    CH552的端口可以設(shè)置四種模式,1、浮空輸入,無上,2、 推挽輸入輸出,3 、輸入輸出,
    發(fā)表于 03-01 14:48

    I2C總線-通信線纜長度的影響及改進措施

    的,那么如何延長 I2C 通信線纜長度呢,也就是如何進行I2C遠距離通信,下面幾條經(jīng)驗是可以作為參考的: (1)實驗測試中,我們發(fā)現(xiàn),在通信正常的情況下,I2C總線的
    發(fā)表于 01-21 06:03

    基于FPGA的I2C控制模塊設(shè)計

    I2C_WRITE_WDATA.v模塊實現(xiàn)I2C寫時序,I2C_Controller (I2C控制器)例化了I2C_WRITE_WDATA.
    的頭像 發(fā)表于 12-26 09:48 ?5012次閱讀
    基于FPGA的<b class='flag-5'>I2C</b>控制模塊設(shè)計

    I2C死鎖的問題

    產(chǎn)生8個時鐘脈沖,然后低SCL信號為低電平,在這個時候,從設(shè)備輸出應(yīng)答信號,將SDA信號為低電平。 如果這個時候主設(shè)備異常復(fù)位,SCL就會被釋放為高電平。此時,如果從設(shè)備沒有復(fù)位,就會繼續(xù)
    發(fā)表于 12-04 06:00

    基于CW32 MCU的I2C接口優(yōu)化穩(wěn)定讀寫EEPROM關(guān)鍵技術(shù)

    過低的頻率導(dǎo)致通信錯誤。 電阻的選擇與配置:探討I2C總線上電阻的作用,如何根據(jù)線纜長度
    發(fā)表于 12-03 07:29

    I2C的缺點介紹

    距離限制: I2C 主要設(shè)計用于單個電路板內(nèi)或位置較近的組件之間的短距離通信??偩€的電容和電阻電阻限制了可實現(xiàn)的最大通信距離。隨著
    發(fā)表于 11-27 06:10

    深入剖析I2C協(xié)議

    I2C是由Philips開發(fā)的簡單的雙向兩線總線,在深入淺出理解SPI協(xié)議中,我們區(qū)分了單工,半雙工,全雙工協(xié)議數(shù)據(jù)流向的區(qū)別,根據(jù)特征,I2C協(xié)議屬于半雙工協(xié)議(即同一時刻,數(shù)據(jù)單向流動)。此外
    的頭像 發(fā)表于 08-21 15:10 ?3684次閱讀
    深入剖析<b class='flag-5'>I2C</b>協(xié)議

    請問I2C和驅(qū)動能力怎么修改?

    我想關(guān)閉芯片內(nèi)部I2C并調(diào)整引腳的驅(qū)動能力,軟件怎么操作呢?
    發(fā)表于 08-11 06:54

    AS32系列MCU芯片I2C模塊性能解析與調(diào)試

    實現(xiàn)了IIC協(xié)議的標(biāo)準(zhǔn)模式和快速模式,支持多主機IIC總線架構(gòu)。其中標(biāo)準(zhǔn)模式為100K,快速模式400K。 硬件設(shè)計 I2C 總線內(nèi)部使用極開路輸出驅(qū)動器,因此 SDA和 SCL 可以被
    的頭像 發(fā)表于 06-20 16:31 ?980次閱讀
    AS32系列MCU芯片<b class='flag-5'>I2C</b>模塊性能解析與調(diào)試

    【技術(shù)說明】數(shù)字輸出壓力傳感器的I2C通信

    地址進行軟件尋址,且主從關(guān)系始終存在??偩€連接設(shè)備的輸出級采用架構(gòu)設(shè)計,因此必須在總線上提供電阻
    的頭像 發(fā)表于 06-19 11:02 ?1794次閱讀
    【技術(shù)說明】數(shù)字<b class='flag-5'>輸出</b>壓力傳感器的<b class='flag-5'>I2C</b>通信

    Analog Devices Inc. ADuM1252雙向I2C隔離器數(shù)據(jù)手冊

    Analog Devices Inc. ADuM1252雙向^I2C^隔離器為要求在同一線路上雙向傳輸數(shù)據(jù)的應(yīng)用(如 ^I2C^ )提供兩個雙向通道。為防止閂鎖操作,第1側(cè)
    的頭像 發(fā)表于 06-10 10:30 ?1011次閱讀
    Analog Devices Inc. ADuM1252雙向<b class='flag-5'>I2C</b>隔離器數(shù)據(jù)手冊

    MAX7327 I2C端口擴展器,提供12路推挽式輸出和4路極開路I/O技術(shù)手冊

    MAX7327 2線串行接口外設(shè),該器件具有12路推挽輸出,以及4路可配置的I/O端口,帶有可選擇的內(nèi)部
    的頭像 發(fā)表于 05-22 15:41 ?813次閱讀
    MAX7327 <b class='flag-5'>I</b>2<b class='flag-5'>C</b>端口擴展器,提供12路推挽式<b class='flag-5'>輸出</b>和4路<b class='flag-5'>漏</b>極開路<b class='flag-5'>I</b>/O技術(shù)手冊

    CYUSB3065 (CX3) GPIO 所有輸出都是推挽還是? 需要配置外部/下拉電阻嗎?

    CYUSB3065 (CX3) GPIO 所有輸出都是推挽還是? 需要配置外部/下拉電阻
    發(fā)表于 05-12 07:42

    嵌入式硬件雜談:推挽、、高阻態(tài)、電阻

    對于嵌入式硬件這個龐大的知識體系而言,太多離散的知識點很容易疏漏,因此對于這些容易忘記甚至不明白的知識點做成一個梳理,供大家參考以及學(xué)習(xí),本文主要針對推挽、、高阻態(tài)、
    的頭像 發(fā)表于 04-17 19:31 ?2152次閱讀
    嵌入式硬件雜談:推挽、<b class='flag-5'>開</b><b class='flag-5'>漏</b>、高阻態(tài)、<b class='flag-5'>上</b><b class='flag-5'>拉</b><b class='flag-5'>電阻</b>

    I2C總線復(fù)用

    帝晶智慧屏I2C總線復(fù)用
    的頭像 發(fā)表于 03-11 17:20 ?2108次閱讀