文章目录
- I2C计算总线上拉电阻
-
- 概述
- 上拉电阻的下限
-
- 总线电流要求
- 上拉电阻的上限
-
- I2C负载上升时间总线的定义
- 实际应用中
I2C计算总线上拉电阻
概述
对于I2C使用总线OD/OC驱动,因此需要借助上拉电阻建立高电平。上拉电阻的选择主要受以下因素影响。
- 总线负载电容
- 总线的速度
- 总线驱动电压
- 总线的低电平阈值
上拉电阻的下限
上拉电阻不能无限小,想象一个极端情况,当上拉电阻为0时.00001R此时,为了达到总线的低电平阈值,电阻上的压降约为电源电压-低电平阈值。此时,电阻所需的电流非常大,因此上拉电阻的下限受三个因素的影响。
- 总线的电压 VCC
- 总线低压阈值 VOL
- 在总线上的所有设备中,IO灌电流最低的设备(流入IC的电流) IOL
上拉电阻的下限可以根据这三个值计算
总线电流要求
在NXP在手册中,不同速度等级总线的灌电流(sink current)要求不同 在实际使用中,应根据具体的设备手册对设备的灌注电流进行评估。
上拉电阻的上限
上拉电阻不能无限大,因为总线需要驱动速度。假设总线上有分布式电容器和输入接口寄生电容器MOS或者晶体管可以瞬间截止。此时,总线上的电压可视为标准RC充电模型。此时,电压上升时间与总线上拉电阻和总线负载电容两个值有关。 因此,总线上拉电阻的上限受总线负载电容和速度等级的限制
I2C负载上升时间总线的定义
I2C总线上升时间按30%-70%的电压上升时间定义。 不同速度等级I2C总线对上升时间有不同的要求。具体要求见表格 因此,上拉电阻的上限可以按下表计算
实际应用中
在实际应用中,总线的负载电容在决定电阻的所有变量中难以准确计算,只能大致估计范围。因此,在应用中,一般根据估计和经验选择临时上拉电阻,然后根据波形试验效果选择合适的电阻。假设10在某些系统中k,4.7k,2k如果电阻能满足要求,则应根据设计要求选择速度和功耗。上拉电阻越大,功耗越低,牺牲部分上升时间。上拉电阻小意味着功耗高,总线扩展能力强,多板卡I2C特别注意上拉电阻的设计。
- 当波形缓慢上升时,需要降低上拉电阻。
- 当波形低电平不能降低时VOl以下时,需要增加上拉电阻。
- 当上拉电阻调整到一个非常小的水平,但仍不能满足总线的时间顺序要求时,可以增加总线中继器。共享总线的负载电容,重新调整上拉电阻。