chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

【干貨】IIC上拉電阻的選擇與計算

哈哈hfgfdf ? 來源:嵌入式學(xué)習資料 ? 作者:嵌入式學(xué)習資料 ? 2022-12-13 16:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

577456fe-7ac0-11ed-abeb-dac502259ad0.png


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

57a593ae-7ac0-11ed-abeb-dac502259ad0.png

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

備注:

I2C的上拉電阻可以是1.5K,2.2K,4.7K, 電阻的大小對時序有一定影響,對信號的上升時間和下降時間也有影響,一般接1.5K或2.2K

I2C上拉電阻確定有一個計算公式:
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ū)動電流(最大取3mA)決定;
于是 Rpmin=5V/3mA≈1.7K(@Vio=5V)或者2.8V/3mA≈1K(@Vio=2.8V)

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

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

上拉電阻阻值的確定

由于I2C接口采用Open Drain機制,器件本身只能輸出低電平,無法主動輸出高電平,只能通過外部上拉電阻RP將信號線拉至高電平。因此I2C總線上的上拉電阻是必須的!

RP不宜過小,一般不低于1KΩ

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

RP不宜過大,一般不高于10KΩ

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

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

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

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

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

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

I2C信號線屬于低速控制線,在手機PCB設(shè)計時,按通常的控制IO對待即可,無需做特別的保護設(shè)計,一般不用擔心受到噪聲源干擾。

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

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

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

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

軟件模擬I2C時序

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

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

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

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

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

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

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

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

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

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

審核編輯 黃昊宇

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

    關(guān)注

    88

    文章

    5700

    瀏覽量

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

    關(guān)注

    11

    文章

    306

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    請問STM32新出的芯片USB還需要電阻嗎?

    我記得F103的USB需要電阻,STM32新出的芯片USB還需要電阻嗎?例如H5系列
    發(fā)表于 07-18 06:40

    CYW5557x 的內(nèi)部/下拉電阻值是多少?

    CYW5557x 的內(nèi)部/下拉電阻值是多少? 我想知道的值是帶引腳(GPIO_1 和 GPIO_12)的電阻值, 以及其他 GPIO
    發(fā)表于 07-17 07:03

    壓敏電阻選擇方法及計算

    尺有所短、寸有所長 壓敏電阻選擇 1、 壓敏電阻的命名;我國規(guī)定壓敏電阻用“MY”表示.。J 為家用、后綴字母 W-穩(wěn)壓 G-過壓 P 高頻電路 L-防雷 H-滅弧 Z-消噪 B-
    發(fā)表于 06-28 16:48

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

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

    國巨電阻功率的選擇方法

    在電子電路設(shè)計中,電阻作為基礎(chǔ)元件,其功率參數(shù)的合理選擇直接關(guān)系到電路的穩(wěn)定性、可靠性及使用壽命。電阻功率的選擇需結(jié)合電路實際工況、環(huán)境溫度、散熱條件及安全余量等多方面因素進行綜合考量
    的頭像 發(fā)表于 04-24 15:04 ?1343次閱讀
    國巨<b class='flag-5'>電阻</b>功率的<b class='flag-5'>選擇</b>方法

    一次性說清電阻和下拉電阻

    在電子元件領(lǐng)域,電阻與下拉電阻并非獨立的物理實體,而是依據(jù)電阻在不同電路場景中的功能定義。它們的本質(zhì)仍是普通
    的頭像 發(fā)表于 04-03 19:34 ?1070次閱讀
    一次性說清<b class='flag-5'>上</b><b class='flag-5'>拉</b><b class='flag-5'>電阻</b>和下拉<b class='flag-5'>電阻</b>

    電阻的工作原理詳解

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

    電阻阻值怎么選擇

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

    電阻選擇指南與技巧

    電阻電阻值是電阻器最基本的參數(shù),通常以歐姆(Ω)為單位。選擇合適的電阻值需要考慮電路的具體需求,如電壓降、電流限制等。
    的頭像 發(fā)表于 02-05 09:16 ?1430次閱讀

    如何選擇I2C總線電阻

    I2C總線是一種廣泛使用的串行通信協(xié)議,它允許多個設(shè)備通過兩條線(數(shù)據(jù)線SDA和時鐘線SCL)進行通信。為了確保數(shù)據(jù)信號的穩(wěn)定性和減少反射,I2C總線的數(shù)據(jù)線SDA和時鐘線SCL都需要適當?shù)?b class='flag-5'>上電阻
    的頭像 發(fā)表于 01-17 15:43 ?897次閱讀

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

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

    SN74CBTLV3257輸入是1.8v,輸出是否可以是3.3v, 電阻是3.3v?

    像這種SN74CBTLV3257的用傳輸門作為選擇器的器件。我輸入是1.8v,輸出是否可以是3.3v, 電阻是3.3v?
    發(fā)表于 12-16 07:30

    SN74AVCH8T245的pin2引腳DIR Datasheet要求其至VCCA,其電阻取值是多少?

    嗎?如果此芯片用于JTAG,有推薦的TI ESD器件嗎? 2:SN74AVCH8T245 的pin 2引腳DIR Datasheet要求其至VCCA,其
    發(fā)表于 12-04 07:50

    如何選擇適合的電阻

    選擇適合的電阻時,需要考慮以下幾個關(guān)鍵因素: 一、阻值 確定阻值范圍 :根據(jù)電路設(shè)計需求和電流計算,確定所需的最小和最大阻值。原則是所用電阻器的標稱阻值與所需
    的頭像 發(fā)表于 10-31 09:15 ?2328次閱讀

    MCU通過IIC口控制TLV320AIC3204,請問MCU的IIC接口和TLV320AIC3204的IIC接口對接時需要電平轉(zhuǎn)換嗎?

    MCU通過IIC口控制TLV320AIC3204,該芯片的IOVDD接1.8V,MCU的IIC電平是3.3V,請問MCU的IIC接口和
    發(fā)表于 10-30 06:02