新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > I2C上拉電阻如何取值?

I2C上拉電阻如何取值?

作者: 時間:2024-03-11 來源:硬件攻城獅 收藏

I2C一般為開漏結(jié)構(gòu),需要在外部加上拉電阻,常見的阻值有1k、1.5k、2.2k、4.7k、5.1k、10k等。

本文引用地址:http://m.butianyuan.cn/article/202403/456205.htm


但是應(yīng)該如何根據(jù)開發(fā)要求選擇合適的阻值呢?


假設(shè)SDA是低電平時,即MOS管導(dǎo)通。那么,就可以求出上拉電阻R的阻值。


上拉電阻計算公式:


VOL定義為在漏極開路或集電極開路時,有3mA下拉電流時的低電平輸出電壓。IOL就是該端口的灌電流,即IOL=3mA。


由上式可得,當(dāng)VDD不變, VOL取最大值時,上拉電阻有最小值。


根據(jù),端口輸出低電平的最高允許電壓是0.4V。


公式1可以改為:


由式2可以得出:電源電壓決定了上拉電阻的最小值。因此,當(dāng)VDD=5V時,最小上拉電阻約為1.5k;當(dāng)VDD=3V3時,約為1k。


由于I2C總線端口的高電平是通過上拉電阻實現(xiàn),線上的電平從低變高時,電源通過上拉電阻對線上負(fù)載電容CL充電,這需要一定的上升時間。


電容充電一般公式:


整理可得:


I2C規(guī)范將低于VIL或0.3VDD的電壓定義為邏輯低電平,同樣將高于VIH或0.7VDD的電壓定義為邏輯高電平,由式4可以求得:





由公式5可判斷,當(dāng)Tr取最大值,CL取最小值時,R有最大值。


由于不同模式下,上升沿的最大時間及總線負(fù)載最大容限要求不同,標(biāo)準(zhǔn)模式、快速模式、高速模式分別是:1000ns/400pF、300ns/400pF、120ns/550pF。


以快速模式下,負(fù)載電容50pF為例,則有:


結(jié)論:電源電壓決定上拉電阻的最小值,總線負(fù)載電容決定上拉電阻的最大值。




關(guān)鍵詞: I2C協(xié)議

評論


技術(shù)專區(qū)

關(guān)閉