上拉電阻計算
2、上拉電阻過大,上升沿時間增大,方波可能會變成三角波。
因此計算出一個精確的上拉電阻阻值是非常重要的。
計算上拉電阻的阻值,是有明確計算公式的:
最大電阻和上升沿時間 tr 、總線電容 Cb 、標準上升沿時間 0.8473 有關。
最小電阻和電源 Vdd 電壓、GPIO 口自己最大輸出電壓 Vol、 GPIO口自己最大電流 Vol 有關。
1、標準模式:0~100KHz,上升沿時間 tr = 1us
2、快速模式:100~400KHz,上升沿時間 tr = 0.3us
3、高速模式:up to 3.4MHz,上升沿時間 tr = 0.12us
由此公式,假設 Vdd 是 1.8V 供電,Cb 總線電容是200pF(雖然協議規定負載電容最大 400pF,實際上超過 200pF
波形就很不好,我們以 200pF 來計算)
標準模式 :
快速模式:
高速模式:
最小電阻(Vdd越大,上拉電阻就要越大):
note:高速模式下,電源電壓一般采用 1.8 V,不會采用 3.3V,因為如果用 3.3V 計算你會發現最小電阻比最大電阻大。
大家在不同速率采用的電阻一般有以下幾種:1.5K、2.2K、4.7K。
一般大家采用 I2C 使用標準模式即可 ,也就是 100KHz,推薦上拉電阻是 4.7K,當然大家可以用示波器看傳輸波形,適當調整。
結論:I2C上拉電阻阻值和電源電壓、傳輸速度、總線電容(負載因素)都有關系,大家根據自己的板子計算一下即可,選取最優電阻阻值,從而獲得最優傳輸波形。
最大電阻 Rp 和總線電容 Cb 關系圖:
note:建議總線電容維持在 100pF 以下。
-
電阻
+關注
關注
86文章
5507瀏覽量
171931 -
上拉電阻
+關注
關注
5文章
359瀏覽量
30609 -
總線
+關注
關注
10文章
2878瀏覽量
88052 -
I2C
+關注
關注
28文章
1484瀏覽量
123623
發布評論請先 登錄
相關推薦
評論