在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

【干貨】IIC上拉電阻的選擇與計(jì)算

哈哈hfgfdf ? 來(lái)源:嵌入式學(xué)習(xí)資料 ? 作者:嵌入式學(xué)習(xí)資料 ? 2022-11-09 13:21 ? 次閱讀

I2C總線為什么要接上拉電阻

1、根據(jù)I2C總線規(guī)范,總線空閑時(shí)兩根線都必須為高;
這是規(guī)定,動(dòng)不了的,不然什么叫標(biāo)準(zhǔn)呢?其實(shí)所謂的這個(gè)神圣的標(biāo)準(zhǔn)也并不是多么邪乎,你想啊,只有是高的才能拉成低的,難道誰(shuí)可以把低的拉成高的嗎?所以這是之所以規(guī)定空閑時(shí)必須為高的一個(gè)原因,要是保持“低”的話,那是不可能成為“多主”總線的。
2、上拉電阻的問(wèn)題;
其實(shí)各個(gè)I2C接口工作時(shí)只檢測(cè)高、低電平,管你有沒(méi)有什么上拉電阻呢!
但問(wèn)題是,你要是直接接電源的來(lái)實(shí)現(xiàn)高的話,一旦其他器件拉低時(shí)豈不危險(xiǎn)?
所以,這個(gè)上拉電阻有保護(hù)作用。如果你確信直接接電源沒(méi)問(wèn)題(比如有短路保護(hù)等,呵呵),也可以試一試,問(wèn)題的關(guān)鍵是主器件要能正確的拉低或置高,從器件要能明確地區(qū)分高、低就可以了,這是問(wèn)題的關(guān)鍵,當(dāng)然,還有時(shí)序問(wèn)題,不能混亂!
STM32f103的I2C例程:

4e0e60f6-5fee-11ed-b468-dac502259ad0.png


理論上,軟件IIC可以使用任何通用引腳。
有人用PA2和PA3進(jìn)行IIC通信

4e5e3d1a-5fee-11ed-b468-dac502259ad0.png

3、電阻大小的問(wèn)題;
最直接的,牽涉到兩方面的問(wèn)題,首先是功耗的問(wèn)題,其次是速度的問(wèn)題,二者是矛盾的!如果你想盡量提高速度,那么就牽涉到總線電容的問(wèn)題,其實(shí)很容易理解,上拉電阻與總線的電容形成了RC,高速時(shí)將直接影響通訊!因?yàn)榭偩€拉高時(shí)有個(gè)充電時(shí)間以及高電平的閥值,如果還沒(méi)有充電到足以保證從器件可以識(shí)別的高電平的閥值時(shí)主器件就以為完成了一個(gè)總線動(dòng)作的話,那么通訊肯定是不能進(jìn)行的!
如果你想盡可能降低功耗,那么就要盡可能增大電阻以最大可能的減小電路各部分的消耗電流從而實(shí)現(xiàn)整體降低功耗!但不可能無(wú)限大,否則充電時(shí)間你會(huì)受不了的!

備注:

I2C的上拉電阻可以是1.5K,2.2K,4.7K, 電阻的大小對(duì)時(shí)序有一定影響,對(duì)信號(hào)的上升時(shí)間和下降時(shí)間也有影響,一般接1.5K或2.2K

I2C上拉電阻確定有一個(gè)計(jì)算公式:
Rmin={Vdd(min)-0.4V}/3mA
Rmax=(T/0.874) *c, T=1us 100KHz, T=0.3us 400KHz
C是Bus capacitance
Rp最大值由總線最大容限(Cbmax)決定,Rp最小值由Vio與上拉驅(qū)動(dòng)電流(最大取3mA)決定;
于是 Rpmin=5V/3mA≈1.7K(@Vio=5V)或者2.8V/3mA≈1K(@Vio=2.8V)

Rpmax的取值:參考周公的I2C總線規(guī)范中文版P33圖39與P35圖44

標(biāo)準(zhǔn)模式,100Kbps總線的負(fù)載最大容限<=400pF;快速模式,400Kbps總線的負(fù)載最大容限<=200pF,根據(jù)具體使用情況、目前的器件制造工藝、PCB的走線距離等因素以及標(biāo)準(zhǔn)的向下兼容性,設(shè)計(jì)中以快速模式為基礎(chǔ),即總線負(fù)載電容<200pF,也就是傳輸速度可以上到400Kbps是不成問(wèn)題的。于是Rpmax可以取的范圍是1.8K~7K @ Vio=5V對(duì)應(yīng)50pF~200pF

上拉電阻阻值的確定

由于I2C接口采用Open Drain機(jī)制,器件本身只能輸出低電平,無(wú)法主動(dòng)輸出高電平,只能通過(guò)外部上拉電阻RP將信號(hào)線拉至高電平。因此I2C總線上的上拉電阻是必須的!

RP不宜過(guò)小,一般不低于1KΩ

一般IO端口的驅(qū)動(dòng)能力在2mA~4mA量級(jí)。如果RP阻值過(guò)小,VDD灌入端口的電流將較大,這導(dǎo)致端口輸出的低電平值增大(I2C協(xié)議規(guī)定,端口輸出低電平的最高允許值為0.4V);如果灌入端口的電流過(guò)大,還可能損壞端口。故通常上拉電阻應(yīng)選取不低于1KΩ的電阻(當(dāng)VDD=3V時(shí),灌入電流不超過(guò)3mA)。

RP不宜過(guò)大,一般不高于10KΩ

由于端口輸出高電平是通過(guò)RP實(shí)現(xiàn)的,線上電平從低到高變化時(shí),電源通過(guò)RP對(duì)線上負(fù)載電容CL充電,這需要一定的時(shí)間,即上升時(shí)間。端口信號(hào)的上升時(shí)間可近似用充電時(shí)間常數(shù)RPCL乘積表示。

信號(hào)線負(fù)載電容(對(duì)地)由多方面組成,包括器件引腳、PCB信號(hào)線、連接器等。如果信號(hào)線上掛有多個(gè)器件,負(fù)載電容也會(huì)增大。比如總線規(guī)定,對(duì)于的400kbps速率應(yīng)用,信號(hào)上升時(shí)間應(yīng)小于300ns;假設(shè)線上CL為20PF,可計(jì)算出對(duì)應(yīng)的RP值為15KΩ。

如果RC充電時(shí)間常數(shù)過(guò)大,將使得信號(hào)上升沿變化緩慢,達(dá)不到數(shù)據(jù)傳輸?shù)囊蟆?/p>

因此一般應(yīng)用中選取的都是幾KΩ量級(jí)的上拉電阻,比如都選取4K7的電阻。

小阻值的RP電阻增大了端口Sink電流,故在可能的情況下,RP取值應(yīng)稍大一點(diǎn),以減少耗電。另外,通產(chǎn)情況下,SDA,SCL兩條線上的上拉電阻取值是一致的,并上拉到同一電源上。

PCB布局布線與抗干擾設(shè)計(jì)

I2C信號(hào)線屬于低速控制線,在手機(jī)PCB設(shè)計(jì)時(shí),按通常的控制IO對(duì)待即可,無(wú)需做特別的保護(hù)設(shè)計(jì),一般不用擔(dān)心受到噪聲源干擾。

但在一些特定的情況下,比如折疊、滑蓋機(jī)型中,I2C的兩根信號(hào)線需要通過(guò)轉(zhuǎn)軸或滑軌處的FPC,此時(shí)由于信號(hào)路徑比較長(zhǎng),距離天線比較近,而且Open drain的輸出級(jí)對(duì)地阻抗大,對(duì)干擾比較敏感,因此比較容易受到RF信號(hào)源的干擾。在這種情況下,就應(yīng)適當(dāng)注意對(duì)I2C信號(hào)線的保護(hù)。比如I2C兩條信號(hào)線(SDA,SCL)等長(zhǎng)度地平行走線,兩邊加地線進(jìn)行保護(hù),避免臨近層出現(xiàn)高速信號(hào)線等。

上拉電阻應(yīng)安置在OD輸出端附近。當(dāng)I2C總線上主從器件(Master& Slave)兩端均為OD輸出時(shí),電阻放置在信號(hào)路徑的中間位置。當(dāng)主設(shè)備端是軟件模擬時(shí)序,而從設(shè)備是OD輸出時(shí),應(yīng)將電阻安置在靠近從設(shè)備的位置。

I2C協(xié)議還定義了串聯(lián)在SDA、SCL線上電阻Rs。該電阻的作用是,有效抑制總線上的干擾脈沖進(jìn)入從設(shè)備,提高可靠性。這個(gè)電阻的選擇一般在100~200ohm左右。當(dāng)然,這個(gè)電阻并不是必須的,在惡劣噪聲環(huán)境中,可以選用。

比如常用的FM接收模塊或者Capsense觸摸感應(yīng)功能塊,都是通過(guò)I2C接口控制的。I2C接口信號(hào)從處理器出發(fā),經(jīng)過(guò)PCB上的信號(hào)路徑,進(jìn)入上述電路單元。I2C信號(hào)線上載有一定干擾,這種干擾雖然幅度并不很大,但還是會(huì)影響敏感的FM接收模塊或Capsense觸摸感應(yīng)功能塊。此時(shí),可以通過(guò)在靠近FM模塊或觸摸感應(yīng)模塊的I2C信號(hào)線上串接Rs電阻,即可有效降低干擾的影響。此外,上拉電阻端的電源也要進(jìn)行退耦處理。

軟件模擬I2C時(shí)序

由于一般的I2C應(yīng)用速率并不高(400kbps),使用處理器的IO口模擬I2C波形,完全可以勝任(處理器一般擔(dān)任Master,占有I2C通信的控制權(quán),無(wú)需擔(dān)心隨機(jī)的I2C通信服務(wù)中斷其他任務(wù)的執(zhí)行)。

處理器分配給I2C任務(wù)的IO口,要求可以輸出高低電平,還能配置為輸入端口。處理器根據(jù)總線規(guī)范以及從設(shè)備的時(shí)序要求,利用2條IO信號(hào)線,模擬I2C接口時(shí)序波形,進(jìn)行I2C通信。

處理器發(fā)送數(shù)據(jù)時(shí),通過(guò)IO口輸出高電平,上升時(shí)間基本與外部上來(lái)電阻阻值無(wú)關(guān),且比用外部上拉電阻上拉到高電平快很多。處理器在接受數(shù)據(jù)時(shí),即便上拉電阻阻值選的大一些,從設(shè)備輸出數(shù)據(jù)的波形上升沿緩慢,但由于處理器使用軟件采樣的而非硬件采樣,因此,對(duì)數(shù)據(jù)傳輸?shù)慕Y(jié)果并不影響。也就是說(shuō),使用IO口模擬I2C時(shí)序時(shí),上拉電阻阻值可以適當(dāng)選的大一些。

需要指出的是,使用軟件模擬最多只能完成單Master的應(yīng)用,對(duì)于多Master應(yīng)用,由于需要進(jìn)行總線控制權(quán)的仲裁管理,使用軟件模擬的方法很難完成。

I2C總線空閑的時(shí)候,兩條信號(hào)線應(yīng)該維持高電平。否則,上拉電阻上會(huì)有耗電。特別是在上電過(guò)程中,IO線上電平也應(yīng)保持在高電平狀態(tài)。也就是說(shuō):當(dāng)Master的I2C使用的是IO軟件模擬時(shí),一定要保證該兩個(gè)IO上電默認(rèn)均為輸入(或高阻)或者輸出高電平,切不可默認(rèn)為輸出低電平。IO默認(rèn)為輸入時(shí),可以通過(guò)外部上拉電阻將I2C信號(hào)線拉至高電平。

I2C應(yīng)用中上拉電阻電源問(wèn)題

在部中分應(yīng)用中,還存在主從設(shè)備以及上拉電阻電源不一致的情況,比如Camera模組。在很多設(shè)計(jì)方案中,Camera模組不工作時(shí),并不是進(jìn)入Power Down模式,而是直接關(guān)閉模組供電VDDS。此時(shí),處理器與模組相互連接的所有信號(hào)線都應(yīng)該進(jìn)入高阻態(tài),否則就會(huì)有電流漏入模組;而對(duì)于此時(shí)的I2C控制信號(hào)線來(lái)說(shuō),由于上拉電阻的存在,必須關(guān)斷上拉電阻電源VDDP。如果上拉電阻使用的是系統(tǒng)電源VDDM(VDDP=VDDM),無(wú)法關(guān)閉,就會(huì)有漏電流進(jìn)入模組;因此這種情況下,應(yīng)該使用VDDS作為上拉電阻電源(VDDP=VDDS),這樣上拉電阻電源與Slave電源即可同時(shí)關(guān)閉,切斷了漏電路徑。

另外需要注意的是,在上述應(yīng)用實(shí)例中選擇的IO,應(yīng)該選取上電默認(rèn)為輸入(或高阻)才行。

總的來(lái)說(shuō):電源電壓限制了上拉電阻的最小值 ;負(fù)載電容(總線電容)限制了上拉電阻的最大值
補(bǔ)充:在I2c總線可以串連300歐姆電阻RS可以用于防止SDA和SCL線的高電壓毛刺: I2c從設(shè)備的數(shù)量受總線電容,<=400pF的限制

做過(guò)I2C碰到過(guò)各種問(wèn)題,多半是上拉電阻或者控制器時(shí)鐘的問(wèn)題。沒(méi)上拉電阻或者上拉電阻過(guò)大,都會(huì)導(dǎo)致不穩(wěn)定而出現(xiàn)尋址不到的問(wèn)題。

審核編輯 黃昊宇

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

    關(guān)注

    5

    文章

    360

    瀏覽量

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

    關(guān)注

    11

    文章

    302

    瀏覽量

    38370
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    I2C總線上電阻阻值如何確定?

    導(dǎo)讀I2C總線在產(chǎn)品設(shè)計(jì)中被廣泛應(yīng)用,盡管其結(jié)構(gòu)簡(jiǎn)單,但經(jīng)常發(fā)生電阻設(shè)計(jì)不合理的問(wèn)題。本文將對(duì)I2C
    的頭像 發(fā)表于 12-27 11:34 ?886次閱讀
    I2C總線上<b class='flag-5'>拉</b><b class='flag-5'>電阻</b>阻值如何確定?

    I2C總線上電阻計(jì)算

    電子發(fā)燒友網(wǎng)站提供《I2C總線上電阻計(jì)算.pdf》資料免費(fèi)下載
    發(fā)表于 10-08 09:54 ?1次下載
    I2C總線上<b class='flag-5'>拉</b><b class='flag-5'>電阻</b><b class='flag-5'>計(jì)算</b>

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

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

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

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

    mos驅(qū)動(dòng)電阻如何選擇計(jì)算

    MOS驅(qū)動(dòng)電阻選擇計(jì)算是MOSFET驅(qū)動(dòng)電路設(shè)計(jì)中的重要環(huán)節(jié),它直接影響到MOSFET的開(kāi)關(guān)性能、穩(wěn)定性和效率。以下是對(duì)MOS驅(qū)動(dòng)電阻選擇
    的頭像 發(fā)表于 09-18 10:36 ?1639次閱讀

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

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

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

    門(mén)就具備了輸出高、低電平的功能,而且電平被固定的鉗位在VCC或者GND。 電阻阻值選擇原則: 1、從節(jié)約功耗及芯片的灌電流能力考慮應(yīng)當(dāng)足夠大:
    發(fā)表于 08-22 13:59

    電阻和下拉電阻的用處和區(qū)別介紹

    電阻和下拉電阻是電子電路設(shè)計(jì)中常用的兩種電阻。盡管它們有共同點(diǎn),例如影響電路的阻抗特性和限制電流流過(guò)電路的能力,但它們的工作原理和應(yīng)用場(chǎng)
    的頭像 發(fā)表于 05-02 15:18 ?5003次閱讀
    <b class='flag-5'>上</b><b class='flag-5'>拉</b><b class='flag-5'>電阻</b>和下拉<b class='flag-5'>電阻</b>的用處和區(qū)別介紹

    電阻如何實(shí)現(xiàn)低功耗設(shè)計(jì)

    電阻有助于降低系統(tǒng)的總功耗,同時(shí)保持電路的功能性和穩(wěn)定性。那么電阻如何實(shí)現(xiàn)低功耗設(shè)計(jì)呢?
    的頭像 發(fā)表于 05-02 15:00 ?1054次閱讀

    電阻的作用是什么

    從器件輸出端流出電流。所謂的強(qiáng)和弱指的是電阻
    的頭像 發(fā)表于 05-02 14:51 ?3756次閱讀
    <b class='flag-5'>上</b><b class='flag-5'>拉</b><b class='flag-5'>電阻</b>的作用是什么

    請(qǐng)問(wèn)STM32F429硬件IIC需要外圍上電阻嗎?

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

    STM32cubemx在開(kāi)漏和推挽輸出模式下電阻和下拉電阻有什么作用和區(qū)別?

    只配置過(guò)輸入的時(shí)候和下拉電阻。不知道在開(kāi)漏和推挽輸出模式下電阻和下拉
    發(fā)表于 03-27 07:20

    電阻和下拉電阻是什么

    就是將不確定的信號(hào)通過(guò)一個(gè)電阻鉗位在高電平,電阻同時(shí)起限流作用。而下拉電阻是直接接到地上,接二極管的時(shí)候
    發(fā)表于 02-29 12:39 ?4178次閱讀
    <b class='flag-5'>上</b><b class='flag-5'>拉</b><b class='flag-5'>電阻</b>和下拉<b class='flag-5'>電阻</b>是什么

    IO內(nèi)置電阻的阻值是多少?所有IO都有內(nèi)置電阻么,阻值是否一樣?

    IO內(nèi)置電阻的阻值是多少?所有IO都有內(nèi)置電阻么,阻值是否一樣?
    發(fā)表于 02-21 06:17

    如何確定復(fù)位IC(電壓檢測(cè)器)的電阻、電壓浮動(dòng)呢?

    在此說(shuō)明由電阻引起的電壓浮動(dòng)和選擇電阻的方法
    的頭像 發(fā)表于 02-20 16:37 ?1264次閱讀
    如何確定復(fù)位IC(電壓檢測(cè)器)的<b class='flag-5'>上</b><b class='flag-5'>拉</b><b class='flag-5'>電阻</b>、電壓浮動(dòng)呢?
    主站蜘蛛池模板: 四虎必出精品亚洲高清| h视频免费网站| 深夜看片在线观看18| 免费啪| 中文字幕自拍| 国产香港日本三级在线观看| 日本理论在线| 天堂中文在线资源| 伊人久久大香线蕉资源| 欧美日本一区二区| 67xxxxxx日本| 免费看啪啪网站| 中文字幕在线观看亚洲| 国产伦精品一区二区三区女| 天天做天天爱天天影视综合| 91精品国产91久久久久青草| 天天舔天天爱| 国产呦在线观看视频| 久久久久久亚洲精品| 天堂在线链接| 天天搞夜夜爽| 色多多福利网站老司机| 午夜国产| 天天色天天爽| 国产精品片| 性叉叉| 欧美人成a视频www| 性色aⅴ闺蜜一区二区三区| 亚洲综合春色另类久久| 亚洲黄色小视频| 亚洲成人自拍| 日本久本草精品| 国产20岁美女一级毛片| 福利社91| 人人干视频| 国产骚b| 午夜三级网| 涩久久| 欧美三级在线视频| 久青草国产手机在线观| 国外精品视频在线观看免费|