99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

IIC為什么要用開漏輸出和上拉電阻?

Q4MP_gh_c472c21 ? 來源:玩轉(zhuǎn)嵌入式 ? 作者:玩轉(zhuǎn)嵌入式 ? 2021-03-09 13:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最近在調(diào)ICM20602模塊(一個六軸陀螺儀和加速度計(jì)), 使用IIC通信協(xié)議, 這個過程中遇到一個困擾我很長時間的問題。

IIC協(xié)議正確, 但是一直讀取失敗.最后發(fā)現(xiàn)因?yàn)闆]配置GPIO為開漏輸出。

推挽輸出和開漏輸出

推挽輸出: 輸出邏輯0,則N-MOS激活; 輸出邏輯1,則P-MOS激活。 開漏輸出: 在不接上拉電阻時, 輸出邏輯0,則N-MOS激活; 輸出邏輯1,P-MOS不會激活, 不會輸出高電平。 在接上拉電阻時, 輸出邏輯0,則N-MOS激活; 輸出邏輯1,P-MOS激活, 可以輸出高電平。
也就是說開漏輸出如果不接上拉電阻, 沒有輸出高電平的能力。 如果需要開漏輸出有輸出高電平的能力需要接一個上拉電阻. 目前很多單片機(jī)GPIO可以通過軟件配置上拉電阻.

左圖為開漏輸出(接上拉電阻), 右圖為推挽輸出

開漏輸出的作用

防止短路: 在一些情況下(比如總線), 多個GPIO口可能會連接在同一根線上, 存在某個GPIO輸出高電平, 另一個GPIO輸出低電平的情況. 如果使用推挽輸出, 你會發(fā)現(xiàn)這個GPIO的VCC和另一個GPIO的GND接在了一起, 也就是短路了(涼涼了). 如果換成開漏輸出呢? VCC和GND多了個電阻, 這樣電路就是安全的.所以總線一般會使用開漏輸出.

76d0b9bc-7ec2-11eb-8b86-12bb97331649.png

線與: 開漏輸出還能實(shí)現(xiàn)線與(自行百度), 減少一個與門, 簡化電路.

IIC為什么用開漏輸出和上拉電阻

IIC協(xié)議支持多個主設(shè)備與多個從設(shè)備在一條總線上,如果不用開漏輸出, 而用推挽輸出, 會出現(xiàn)主設(shè)備之間短路的情況. 至于為什么需要上拉電阻, 那是因?yàn)镮IC通信需要輸出高電平的能力. 為了實(shí)現(xiàn)多個主設(shè)備搶占總線時的仲裁.IIC只有兩根線(SCL和SDA), 怎么判斷哪個主設(shè)備占用總線(當(dāng)然是先來后到了). 假設(shè)主設(shè)備A需要啟動IIC, 他需要在SCL高電平時, 將SDA由高電平轉(zhuǎn)換為低電平作為啟動信號. 主設(shè)備A在把SDA拉高后, 它需要再檢查一下SDA的電平。 為什么? 因?yàn)榫€與. 如果主設(shè)備A拉高SDA時, 已經(jīng)有其他主設(shè)備將SDA拉低了. 由于 1 & 0 = 0 那么主設(shè)備A在檢查SDA電平時, 會發(fā)現(xiàn)不是高電平, 而是低電平. 說明其他主設(shè)備搶占總線的時間比它早, 主設(shè)備A只能放棄占用總線. 如果是高電平, 則可以占用。

這就是開漏輸出在IIC通信中的另一個作用。 SDA是高電平, 說明主設(shè)備A可以占用總線, 然后主設(shè)備A將SDA拉低, 開始通信. SDA是低電平, 說明有人已經(jīng)捷足先登了, 主設(shè)備A不能占用總線, 結(jié)束通信. 因此, 模擬IIC一定要將GPIO端口設(shè)置為開漏輸出并加上上拉電阻.(硬件IIC會自動配置為開漏輸出)。

原文標(biāo)題:IIC為什么需要用開漏輸出和上拉電阻?

文章出處:【微信公眾號:嵌入式ARM】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

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

    關(guān)注

    87

    文章

    5626

    瀏覽量

    175189
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6206

    瀏覽量

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

    關(guān)注

    11

    文章

    306

    瀏覽量

    39514

原文標(biāo)題:IIC為什么需要用開漏輸出和上拉電阻?

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    用STM32F407的IO去驅(qū)動5V的外部電阻,請問VDD_FT的電壓范圍是多少?

    目前想用STM32F407的IO去驅(qū)動5V的外部電阻,看手冊5V容忍的VDD_FT且有保護(hù)二極管。 請問VDD_FT的電壓范圍是多少?
    發(fā)表于 07-10 06:03

    電路設(shè)計(jì)基礎(chǔ):電阻、下拉電阻分析

    電阻、下拉電阻在電子元器件間中,并不存在上電阻和下拉
    的頭像 發(fā)表于 05-22 11:45 ?603次閱讀
    電路設(shè)計(jì)基礎(chǔ):<b class='flag-5'>上</b><b class='flag-5'>拉</b><b class='flag-5'>電阻</b>、下拉<b class='flag-5'>電阻</b>分析

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

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

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

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

    電阻的工作原理詳解

    在電子電路中,電阻起著非常重要的作用,其工作原理基于基本的電學(xué)定律,主要用于在特定的電路場景下將信號電平拉高。 首先,需要了解電路中的電平概念。在數(shù)字電路中,信號電平通常分為高電平
    的頭像 發(fā)表于 02-05 17:40 ?863次閱讀

    電阻阻值怎么選擇

    在電子電路設(shè)計(jì)中,電阻是一種常用的元件,它的阻值選擇至關(guān)重要,需要綜合考慮多個因素來確定合適的阻值。 一、功耗因素 功耗是選擇
    的頭像 發(fā)表于 02-05 17:25 ?750次閱讀

    ADS1118在5V供電時是不是還需要輸出,CS SCK DIN至5V?

    我在使用ADS1118 5V 供電時,數(shù)據(jù)讀不出來。 想問一下ADS1118在 5V供電時是不是還需要輸出CS SCK DIN至
    發(fā)表于 12-10 06:53

    求助,求推薦能支持輸出,且速度可以到50M以上的電平轉(zhuǎn)換芯片?

    TXB0104電平轉(zhuǎn)換芯片不支持IIC協(xié)議(輸出)的轉(zhuǎn)換,只有TXS0104才支持
    發(fā)表于 12-03 08:39

    I2C總線為什么要接上電阻

    I2C為什么要接上電阻?因?yàn)樗?b class='flag-5'>開輸出。 為什么是
    的頭像 發(fā)表于 11-20 10:07 ?1184次閱讀
    I2C總線為什么要接上<b class='flag-5'>拉</b><b class='flag-5'>電阻</b>

    請問TPA3130D2 FAULTZ是輸出嗎?

    ,TPA3130鎖死,怎么讓他自恢復(fù)呢? 通過MCU怎么控制? 3、FAULTZ 是 輸出嗎? FAULTZ直接串聯(lián)10k電阻
    發(fā)表于 10-10 08:16

    IIC信號線需要增加上電阻,是因?yàn)?b class='flag-5'>IIC的IO是什么

    IIC通信中扮演著至關(guān)重要的角色,而電阻的加入則是實(shí)現(xiàn)這種通信方式有效性和可靠性的關(guān)鍵。以下是對此現(xiàn)象的介紹: 一、IIC通信與
    的頭像 發(fā)表于 10-06 15:50 ?2094次閱讀

    電阻和下拉電阻有什么區(qū)別?#硬件工程師 #電路設(shè)計(jì) #揚(yáng)興科技

    電阻
    揚(yáng)興科技
    發(fā)布于 :2024年09月26日 16:41:20

    如何計(jì)算上電阻的值

    ,但在對性能有更高要求或特定條件下,則需要通過更為精確的計(jì)算來確定電阻值。本文將詳細(xì)介紹如何計(jì)算上電阻的值。 首先,我們需要理解
    的頭像 發(fā)表于 09-09 17:20 ?1123次閱讀

    TPA3118的FAULTZ管腳是什么類型的?是輸出嗎?

    FAULTZ管腳是什么類型的?是輸出嗎?下面這個電路會不會對FAULTZ管腳造成傷害?電容E24作用是要SDZ電壓不要迅速拉高,減少開機(jī)的POP聲,但是關(guān)機(jī)時,電容E24放電會不會對FAULTZ管腳造成傷害?急!?。≈x謝
    發(fā)表于 08-30 07:24

    電路設(shè)計(jì)基礎(chǔ):電阻、下拉電阻分析

    ,容易受到外界的干擾。 OC門和OD門不具備輸出高電平的能力。此時,如果在集電極或增加上電阻,如下圖所示: 當(dāng)輸入為高電平時,
    發(fā)表于 08-22 13:59