i2c上拉電阻大小
I2C的上拉電阻可以是1.5K,2.2K,4.7K, 電阻的大小對時序有一定影響,對信號的上升時間和下降時間也有影響,一般接1.5K或2.2K。
I2C上拉電阻確定有一個計算公式:
Rmin={Vdd(min)-o.4V}/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)
標 準模式, 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上拉電阻的作用
做過I2C碰到過各種問題,多半是上拉電阻或者控制器時鐘的問題。沒上拉電阻或者上拉電阻過大,都會導致不穩定而出現尋址不到的問題。
在工業和通訊領域中,上拉電阻在電路系統中常常會具有中斷GPIO控制、I2C等信號方面,對于系統穩定性和輸出電平的穩定具有無可替代的作用。今天就讓我們以手機I2C設計為案例,深入探尋上拉電阻在該系統中的作用,以及I2C上拉電阻最大值都是由哪些因素來決定的。 I2C總線的設計一般都會采用OC或者OD門,如果內部的芯片中沒有設置上拉電阻,那么就必須要在外部接一個上拉來保證高電平的輸出,從而增加這一系統的穩定性。一般情況下I/O端驅動能力會保持在2mA-4mA左右的量級范圍內,而OC或者OD門的導通電壓一般為0.4V左右,手機中加在上拉電阻上的電壓一般都是2.8V。
在該設定下,I2C上拉電阻的最小值不能低于800R。當電壓為5V時,上拉最小值不能低于1.5K。在這種情況下想要中斷和GPIO信號本身,是不需要增加多余的驅動設備的,只需要保持一個高電平就可以了。此時,上拉電阻可以選取大一點的阻值以減小功耗,但須注意一個問題,那就是這個阻值不能太大,經驗值一般在4.7-100K之間,否則會和PCB走線,器件等負載電容影響信號上升時間。 由于目前大多數的I2C接口都采用了OD機制,所以工程師在實際操作的過程中,需要另外加一個上拉電阻才能維持輸出高電平,上拉電阻的最小值須符合之前所提到的要求。 那么,I2C上拉電阻最大值都與哪些因素有關呢? 通常情況下,I2C總線的傳輸速率分為標準模式和快速模式(在快速模式的情況下,I2C總線傳輸速率為400Kbit/s),總線負載的最大容限分別是400pF和200pF。根據I2C總線協議的要求,I2C上拉電阻最大值是被總線電容所限制。下圖是上拉電阻的取值數據圖,圖中的Rs指的是I2C設備串聯在I2C總線上的電阻,它可以有效的防止SDA和SCL高電壓毛刺波產生。
圖為上拉電阻取值數據 由上圖的曲線走勢可以看出,上拉電阻的最小值由上拉電源決定,最大值由總線電容決定。 通過對I2C上拉電阻的實例分析,我們可以看出,上拉電阻在I2C總線中可以起到維持輸出電平穩定、保護芯片的作用。而上拉電阻的最大阻值則是由總線的電容所決定的,工程師在進行上拉選取時,需要依據總線電容和上拉電源的電壓來判斷。
責任編輯:YYX
精彩閱讀推薦:
-
上拉電阻
+關注
關注
5文章
359瀏覽量
30571 -
I2C
+關注
關注
28文章
1481瀏覽量
123283
發布評論請先 登錄
相關推薦
評論