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

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

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

IIC信號線需要增加上拉電阻,是因?yàn)镮IC的IO是什么

科技綠洲 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2024-10-06 15:50 ? 次閱讀

IIC(Inter-Integrated Circuit,即集成電路總線)信號線需要增加上拉電阻,這主要是因?yàn)镮IC的IO(輸入輸出)設(shè)計采用了開漏(Open-Drain)輸出方式。開漏輸出方式在IIC通信中扮演著至關(guān)重要的角色,而上拉電阻的加入則是實(shí)現(xiàn)這種通信方式有效性和可靠性的關(guān)鍵。以下是對此現(xiàn)象的介紹:

一、IIC通信與開漏輸出

IIC通信協(xié)議是一種廣泛應(yīng)用的串行通信協(xié)議,由飛利浦公司(現(xiàn)被恩智浦電子收購)于1982年推出。它主要用于集成電路之間的通信,具有簡單、高效的特點(diǎn)。IIC通信通過兩條總線線路進(jìn)行:串行數(shù)據(jù)線(SDA)和串行時鐘線(SCL)。這兩條線路的電平變化用于傳輸數(shù)據(jù)和時鐘信號。

在IIC通信中,設(shè)備的IO端口采用開漏輸出方式。開漏輸出與推挽輸出不同,它只能輸出低電平(即將線路拉低),而不能直接輸出高電平。這意味著,當(dāng)沒有設(shè)備主動拉低SDA或SCL線時,這兩條線路需要依賴外部電路來維持高電平狀態(tài)。這正是上拉電阻發(fā)揮作用的地方。

二、上拉電阻的作用

  1. 確保線路默認(rèn)為高電平
    • 如前所述,開漏輸出無法直接輸出高電平。因此,在沒有設(shè)備主動拉低SDA或SCL線時,需要上拉電阻將這些線路拉高到電源電壓(通常是Vcc或VDD),從而確保線路默認(rèn)為高電平狀態(tài)。
  2. 支持?jǐn)?shù)據(jù)傳輸和時鐘同步
    • 在IIC通信中,SDA線上的數(shù)據(jù)位是在SCL為低電平時改變,在SCL為高電平時被采樣。上拉電阻確保了SDA線在SCL為高電平時能夠保持穩(wěn)定的狀態(tài),這樣接收設(shè)備才能正確地讀取數(shù)據(jù)。
    • 同時,SCL線作為時鐘信號線,其高電平狀態(tài)也由上拉電阻維持,確保了時鐘信號的穩(wěn)定性和同步性。
  3. 支持ACK信號
    • 接收設(shè)備在接收到數(shù)據(jù)后,需要發(fā)送ACK(Acknowledge)信號來確認(rèn)數(shù)據(jù)已被正確接收。ACK信號是通過將SDA線拉低來實(shí)現(xiàn)的。上拉電阻的存在使得接收設(shè)備能夠?qū)DA線從高電平拉低到低電平,從而發(fā)送ACK信號。
  4. 解決總線競爭
    • 在多主機(jī)IIC總線系統(tǒng)中,如果有多個設(shè)備試圖同時控制總線,可能會導(dǎo)致總線競爭。上拉電阻有助于解決這種情況下的競爭,因?yàn)楫?dāng)一個設(shè)備釋放總線時,其他設(shè)備可以接管并驅(qū)動總線。
  5. 限制電流和保護(hù)設(shè)備
    • 當(dāng)設(shè)備將SDA或SCL線拉低時,電流會通過上拉電阻流向地。選擇適當(dāng)?shù)纳侠娮柚悼梢源_保電流不會過大,從而保護(hù)設(shè)備免受損壞。
  6. 提高信號完整性和噪聲抑制能力
    • 上拉電阻與線路的電容(主要是寄生電容)形成RC充電回路,有助于濾除高頻噪聲,提高信號完整性。同時,它還能減少信號反射和其他信號完整性問題。

三、上拉電阻的選擇

選擇合適的上拉電阻值對于IIC通信的可靠性至關(guān)重要。以下是選擇時需要考慮的幾個因素:

  1. 上升時間
    • 電阻越大,上拉至高電平的速度就越慢。這會導(dǎo)致數(shù)據(jù)傳輸速率受限。因此,需要根據(jù)IIC總線的最大頻率來確定合適的上升時間,并據(jù)此選擇阻值。
  2. 最大灌電流能力
    • IIC總線規(guī)范定義了每個總線上的設(shè)備在拉低線路時能夠承受的最大電流(灌電流)。上拉電阻的阻值應(yīng)確保即使所有掛載的設(shè)備同時嘗試將線路拉低,也不會超過任何單個設(shè)備的最大灌電流規(guī)格。
  3. 功耗考量
    • 電阻上會持續(xù)消耗一定的功率(P = I2R),盡管這部分功耗通常很小,但在低功耗設(shè)計中仍需考慮。較大的上拉電阻可以減小靜態(tài)功耗,但也要平衡數(shù)據(jù)傳輸速度的需求。
  4. 設(shè)備數(shù)量
    • IIC總線上的設(shè)備增加也會適當(dāng)?shù)臏p小電阻阻值以保證信號完整性。

常見的上拉電阻阻值范圍從1kΩ到10kΩ。對于標(biāo)準(zhǔn)速率為100kHz的IIC通信,通常選擇4.7kΩ或10kΩ是比較合適的。對于快速模式(400kHz)或更快的高速模式(3.4MHz),可能需要降低阻值到幾千歐姆,以保證信號的快速上升沿。

四、結(jié)論

綜上所述,IIC信號線需要增加上拉電阻,主要是因?yàn)镮IC的IO采用了開漏輸出方式。上拉電阻在IIC通信中發(fā)揮著至關(guān)重要的作用,它確保了線路默認(rèn)為高電平、支持?jǐn)?shù)據(jù)傳輸和時鐘同步、支持ACK信號、解決總線競爭、限制電流和保護(hù)設(shè)備、提高信號完整性和噪聲抑制能力。因此,在設(shè)計和使用IIC總線時,必須合理選擇和配置上拉電阻。

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

    關(guān)注

    0

    文章

    451

    瀏覽量

    39228
  • 上拉電阻
    +關(guān)注

    關(guān)注

    5

    文章

    360

    瀏覽量

    30652
  • IIC
    IIC
    +關(guān)注

    關(guān)注

    11

    文章

    302

    瀏覽量

    38401
  • 信號線
    +關(guān)注

    關(guān)注

    2

    文章

    176

    瀏覽量

    21509
  • 串行時鐘
    +關(guān)注

    關(guān)注

    1

    文章

    5

    瀏覽量

    10434
收藏 人收藏

    評論

    相關(guān)推薦

    為什么要在IIC信號線加上電阻

    IIC 是一個兩串行通信總線,包含一個 SCL 信號和 SDA 信號,SCL 是時鐘信號,從主設(shè)備發(fā)出,SDA 是數(shù)據(jù)
    的頭像 發(fā)表于 12-25 13:41 ?7548次閱讀
    為什么要在<b class='flag-5'>IIC</b><b class='flag-5'>信號線</b>上<b class='flag-5'>加上</b><b class='flag-5'>拉</b><b class='flag-5'>電阻</b>

    請問STM32F429硬件IIC需要外圍上電阻嗎?

    如題,STM32F429使用IIC通信的時候,是否需要加上電阻? 看過很多資料,都說是需要
    發(fā)表于 04-24 06:35

    如果信號線是3.3V,給1.8V的上電壓,最后輸出的是多少伏?

    請問 如果信號線是3.3V,給1.8V的上電壓,最后輸出的是多少伏需要iic的電壓轉(zhuǎn)化為1.8v。這是我這么設(shè)計的IIC的上
    發(fā)表于 02-27 19:17

    SD卡的時鐘為什么可以不加上電阻呢?是因?yàn)?/b>時鐘永遠(yuǎn)是輸出信號嗎?為什么輸出信號就可以不加上電阻

    SD卡的時鐘為什么可以不加上電阻呢?是因?yàn)?/b>時鐘永遠(yuǎn)是輸出信號嗎?為什么輸出
    發(fā)表于 11-18 16:54

    如何使用STM32F103的IIC信號線進(jìn)行OLED顯示

    0.96OLED燈是如何連線的?如何使用STM32F103的IIC信號線進(jìn)行OLED顯示?
    發(fā)表于 12-13 06:56

    IIC總線的相關(guān)資料推薦

    SDA組成,在官方文檔的介紹中講到,SDA和SCL都是通過一個電流源或者上電阻連接到正的電源電壓,當(dāng)兩條總線空閑的時候,這兩條總線的狀態(tài)都是高電平。注解:在這里我們看到數(shù)據(jù)和時鐘
    發(fā)表于 02-28 12:40

    IIC設(shè)備需要挺長如何操作?

    因?yàn)?/b>之前使用的IIC設(shè)備太長,讀取設(shè)備數(shù)據(jù)容易出錯,縮短線長就沒問題,但是實(shí)際需要長線,這種情況如何處理,能在長線設(shè)備上良好的傳輸IIC數(shù)
    發(fā)表于 06-28 08:08

    PCA9685芯片的模擬的IIC需要加上電阻嗎?

    pca9685用的是IIC通訊,如果用的是模擬的IIC,需要加上電阻嗎?
    發(fā)表于 10-18 06:59

    使用IO PORT進(jìn)行IIC通訊

    使用IO PORT進(jìn)行IIC通訊IIC總線包括了兩條總線(時鐘SCL和數(shù)據(jù)SDA),通過這兩條總線能實(shí)現(xiàn)多個芯片之間的通信。
    發(fā)表于 03-21 09:21 ?21次下載

    IIC是什么?51單片機(jī)IIC的詳細(xì)資料說明

     一。什么是IIC IIC是集成電路總線,IIC總線只有兩根雙向信號線。一根是數(shù)據(jù)SDA,另一根是時鐘
    發(fā)表于 06-13 17:45 ?12次下載
    <b class='flag-5'>IIC</b>是什么?51單片機(jī)<b class='flag-5'>IIC</b>的詳細(xì)資料說明

    iic通信協(xié)議是什么

    IIC協(xié)議是二制,信號線包含SDA和SCL,且信號線是雙向的,開路結(jié)構(gòu),需要通過上
    發(fā)表于 09-13 16:01 ?2w次閱讀
    <b class='flag-5'>iic</b>通信協(xié)議是什么

    【51單片機(jī)】IIC總線

    (讀I方總線)。IIC總線的結(jié)構(gòu)IIC總線只有兩根雙向信號線,一根是數(shù)據(jù)性SDA,另一根是時鐘SCL。所有設(shè)備都是連接在這兩根總線上,IIC
    發(fā)表于 11-23 16:20 ?14次下載
    【51單片機(jī)】<b class='flag-5'>IIC</b>總線

    IIC通信總線尋址

    連接到總線都是SCL連到一起,SDA連到一起4、任何器件都可以低總線的電平IIC通信時序IIC通信時序可分成4個部分:1、開始信號:在SCL為高電平時,SDA產(chǎn)生一個下降沿2、數(shù)據(jù)傳
    發(fā)表于 12-04 16:06 ?14次下載
    <b class='flag-5'>IIC</b>通信總線尋址

    IIC筆記

    一些單片機(jī)型號內(nèi)部設(shè)置上電阻,因此有些上能力夠,可以不加上電阻,有些不夠,主要看所使用的單
    發(fā)表于 01-14 14:16 ?6次下載
    <b class='flag-5'>IIC</b>上<b class='flag-5'>拉</b>筆記

    IIC總線電阻/電容的計算

    1.芯片IIC的接口配置一般為開漏,引腳需要外接上電阻才能保證正常通信。2.IIC電平的定義IIC
    發(fā)表于 01-14 14:37 ?6次下載
    <b class='flag-5'>IIC</b>總線<b class='flag-5'>電阻</b>/電容的計算