协议 计算器

I2C 上拉电阻计算器

根据 VDD、总线电容、上升时间和灌电流计算上拉电阻的最小/最大范围。

I2C Rp 最小/最大值计算器

根据灌电流和上升时间限制,计算标准的上拉电阻窗口。

常见 Fast-mode 限制为 300 ns,Standard-mode 常用 1000 ns。
Rp 最小值
967 ohm
Rp 最大值
3.5 kohm
E12 建议值
1.8 kohm

阻值窗口有效。选择窗口内的标准阻值,并在板上验证边沿时序。

公式说明

下限由下拉电流决定:Rp(min) = (VDD - VOL(max)) / IOL。上限由总线电容和上升时间决定: Rp(max) = tr / (0.8473 * Cb)

这个计算器适合做什么

当你需要为真实 PCB 选择 I2C 上拉电阻,而不是照抄参考设计的固定值时,可以用它先算出安全窗口。 结果是范围,不是单个魔法阻值。

关键参数

  • VDD:上拉电阻连接的总线电压。
  • VOL(max):接收端仍认为是有效低电平的最高输出电压。
  • 总线电容:器件引脚、走线、连接器、线缆、level shifter 和探头的总和。
  • 上升时间限制:所选 I2C 速度模式对应的时序限制。
  • 灌电流:总线上最弱器件在满足 VOL(max) 时可承受的下拉电流。

选阻值前检查

  • 把传感器板、level shifter 和连接器上已有的上拉电阻都算进去。
  • 在总线最远器件处测量上升时间。
  • 使用与固件配置一致的速度模式限制。

常见问题

I2C 的 SDA 和 SCL 都需要上拉电阻吗?

需要。I2C 使用 open-drain 或 open-collector 输出,器件只能把线拉低,不能主动拉高。SDA 和 SCL 都需要上拉到总线电压。

3.3 V I2C 应该用多大的上拉电阻?

常见 3.3 V Fast-mode 总线在 VOL(max) 约 0.4 V、3 mA 灌电流、100 pF 电容和 300 ns 上升时间限制下,窗口大约是 967 Ω 到 3.5 kΩ。1.8 kΩ 或 2.2 kΩ 常是合理起点,但仍要看实测电容和已有上拉。

I2C 上拉电阻应该放在哪里?

每个总线段通常放一对上拉,位置可在 controller 附近或较长总线的电气中点。不要在每个器件旁都加一对完整强度上拉,否则并联后等效阻值会过低。

多个 I2C 器件会如何影响计算?

每个器件、连接器、走线、线缆、探头和 level shifter 都会增加电容。电容越大,上升沿越慢,允许的最大上拉电阻就越小。

为什么计算出来没有有效阻值窗口?

这表示由灌电流限制得到的最小电阻已经大于由上升时间限制得到的最大电阻。可以降低电容、降低 I2C 速度、拆分总线,或使用更强下拉能力的器件/有源 buffer。