I2C上拉電阻取值問題

2021-08-20 13:17:03 字數 1006 閱讀 1581

如果上拉電阻值過小,vcc灌入埠的電流(ic)將較大,這樣會導致mos管v2(三極體)不完全導通(ib*β

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

(實驗:接入200k上拉電阻,結果觀察到訊號上公升時間增大,方波變成三角波)

i2c上拉電阻確定有乙個計算公式:

rmin=/3ma

rmax=(t/0.874) *c,   t=1us 100khz, t=0.3us 400khz

c是bus capacitance

rp最大值由匯流排最大容限(cbmax)決定,rp最小值由vio與上拉驅動電流(最大取3ma)決定;

於是 rpmin=5v/3ma≈1.7k(@vio=5v)或者2.8v/3ma≈1k(@vio=2.8v)

rpmax的取值:參考周公的i2c匯流排規範中文版p33圖39與p35圖44

標準模式,100kbps匯流排的負載最大容限<=400pf;快速模式,400kbps匯流排的負載最大容限<=200pf,根據具體使用情況、目前的器件製造工藝、pcb的走線距離等因素以及標準的向下相容性,設計中以快速模式為基礎,即匯流排負載電容<200pf,也就是傳輸速度可以上到400kbps是不成問題的。於是rpmax可以取的範圍是1.8k~7k @ vio=5v對應50pf~200pf

根據rpmin與rpmax的限制範圍,一般取5.1k @ vio=5v , 負載容限的環境要求也容易達到。在2.8v系統中,console設計選3.3k,portable/handset等低供耗的設計選4.7k犧牲速度換取電池使用時間

總的來說:電源電壓限制了上拉電阻的最小值 ; 負載電容(匯流排電容)限制了上拉電阻的最大值

補充:在i2c匯流排可以串連300歐姆電阻rs可以用於防止sda和scl線的高電壓毛刺

: i2c從裝置的數量受匯流排電容,<=400pf的限制

I2C上拉電阻的取值

對於i2c上拉電阻,在電路圖中經常看到的取值是4.7k 但是一直不知道這個依據,雖然現在依然不是很明白,現在只是先記錄下當前的所知道的。從i2c規範中得知,上拉電阻的取值跟匯流排電容 上公升沿時間是有一定關係的,rp的最小 最大取值的公式都不一樣。並且規範中也只給出了標準 快速 快速 三種模式,高速...

I2C匯流排上拉電阻的計算選取

i2c匯流排上拉電阻的選取 i2c匯流排為漏極開路,輸出 0 時為低電平,輸出 1 時為高阻態,在應用的時候需要外接上拉電阻rp。另外,rs是個可選的電阻,加上該電阻可以有效得抑制匯流排上的高電平毛刺,大大減小過衝。圖1 i2c匯流排結構 針對設計中應用最多的快速模式i2c匯流排 最大速率400kh...

I2C器件一定要加上拉電阻嗎?

i2c器件一定要加上拉電阻嗎?最近碰到i2c器件的上拉電阻接錯,導致通訊不正常,那麼i2c需要上拉電阻麼,多大合適 從網上蒐集了一些回答 1 最近看一些關於at24c02的電路圖,發現有些在sda,scl這兩個腳上接了4.4k或者10k的上拉電阻。有些沒有加上拉電阻。根據at24c02的資料手冊來看...