I2C 上拉电阻计算器

根据 I2C 总线模式(标准/快速/快速+)、电源电压和总线电容,计算符合规范的上拉电阻取值范围及推荐值。

免费在线工具
Loading…

使用说明

  1. 选择 I2C 模式:标准模式(100kHz)、快速模式(400kHz)或快速+模式(1MHz)。
  2. 输入电源电压 Vcc(典型 3.3V 或 5V)。
  3. 输入总线电容 Cb(单位 pF,取值范围 1~400pF,需综合考虑设备数量和走线长度,默认 50pF)。
  4. 页面实时计算并显示最小阻值 Rp(min)、最大阻值 Rp(max) 和推荐阻值 Rp(rec)(几何平均值)。
  5. 下方状态提示会判断推荐阻值是否落在常用范围(1kΩ~10kΩ)内:在范围内显示绿色标签,超出范围显示黄色警告;若 Rp(min) > Rp(max),说明当前总线电容下无法找到合适电阻,需降低电容或换用更慢的模式。
  6. 点击「加载示例数据」可快速恢复为快速模式、Vcc=3.3V、Cb=50pF 的默认示例。

功能介绍

  • 支持 I2C 三种标准速率模式:标准模式(100kHz,tr=1000ns)、快速模式(400kHz,tr=300ns)、快速+模式(1MHz,tr=120ns),每种模式对应固定的最大上升时间 tr、输出低电平最大值 Vol(max)=0.4V、灌电流 Iol=3mA 参数。
  • 按公式 Rp(min) = (Vcc − Vol(max)) / Iol 计算保证总线低电平有效所需的最小上拉电阻。
  • 按公式 Rp(max) = tr / (0.8473 × Cb) 计算保证总线上升时间达标所需的最大上拉电阻。
  • 推荐阻值 Rp(rec) 取最小值和最大值的几何平均数 √(Rp(min) × Rp(max))。
  • 自动判断推荐阻值是否落在工程上常用的 1kΩ~10kΩ 范围内,并给出三种状态提示(范围内/超出范围/无解)。
  • 结果区域同时展示所用的 tr、Vol(max)、Iol 中间参数,方便核对计算依据。

使用场景

MCU 与传感器 I2C 总线上拉电阻选型
在设计单片机连接多个 I2C 传感器(如加速度计、温湿度传感器)的电路时,根据总线速率和预估的走线电容确定合适的上拉电阻。
I2C 总线通信异常排查
当 I2C 总线出现信号上升沿过慢或波形失真的问题时,核对当前上拉电阻是否超出 Rp(max) 上限,判断是否是上拉阻值过大导致时序不满足要求。
多设备级联总线电容评估
总线上挂载设备越多、走线越长,总线电容 Cb 越大,通过调整 Cb 值观察 Rp(max) 的变化,评估在给定拓扑下是否还能满足时序要求。
从标准模式切换到快速+模式的选型调整
产品需要将 I2C 速率从 100kHz 升级到 1MHz(快速+模式)时,重新计算上拉电阻范围,因为更高速率下 tr 更短、Rp(max) 也更小,原有电阻可能需要调小。

常见问题

为什么 Rp(min) 和 Rp(max) 有时会出现 Rp(min) > Rp(max) 的情况?
这通常发生在总线电容 Cb 过大或选用了过快的 I2C 模式(如快速+模式)时,此时按公式算出的最大允许阻值反而小于最小允许阻值,说明在当前条件下不存在同时满足低电平有效和上升时间要求的电阻值,需要降低总线电容(缩短走线、减少设备)或改用较慢的 I2C 模式。
推荐阻值超出 1kΩ~10kΩ 范围还能用吗?
1kΩ~10kΩ 是工程上最常用的经验范围,超出该范围(工具会显示黄色警告)不代表一定不能用,但需要额外评估:阻值过小会增加总线功耗和器件驱动电流负担,阻值过大则可能导致边沿上升过慢、抗干扰能力下降,建议结合具体总线长度和 EMI 环境判断。
总线电容 Cb 应该怎么估算?
总线电容由走线寄生电容和每个挂载器件的引脚电容累加而成,通常每个 I2C 从设备贡献约 5~10pF,加上 PCB 走线本身(每 10cm 约几 pF),典型总线电容在 10~400pF 之间,工具默认给出 50pF 作为常见估算值,具体应根据实际拓扑估算或用示波器测量总线上升沿反推。
Vol(max)=0.4V 和 Iol=3mA 这两个参数是固定的吗?
是的,工具内固定采用 I2C 规范(NXP UM10204)中三种速率模式共同的典型值:输出低电平最大值 0.4V、灌电流 3mA,这是绝大多数 I2C 器件遵循的标准参数;如果你使用的器件手册给出不同的 Vol/Iol 规格,需要手动按公式重新计算。