使用I2C总线应注意的问题

1.信号线上拉电阻

虽然某些芯片引脚内部具有上拉功能,但其一般是弱上拉,容易受到外部干扰,所以在设计I2C电路时务必添加外部上拉电阻Rp,并根据实际使用情况更改阻值。

    当Rp阻值过小时,VDD灌入端口的电流过大(一般IO口的驱动能力在2mA~4mA量级,VDD为3V时灌入电流不得超过3mA),MOS管不完全导通,由饱和状态变为放大状态,输出的低电平增大(I2C协议规定端口低电平最高允许值为0.4V);

    由于I2C端口一般工作在开漏模式下,无法直接输出高电平,而是电源通过Rp对线上负载电容Cl进行充电将端口拉高,当Rp阻值过大时,时间常数Rp*Cl增大,上升时间增加,可能导致输出的方波变成三角波。

Rp=(VDD - 0.4V) / 0.3mA——VDD:I2C电源电压(通常为5V或3.3V)

通常取值范围1k-10k,常用1.2k、2.2k、4.7k。

注意:

    a.SCL和SDA两条线上的上拉电阻阻值相等并上拉到同一电源上。

    b.上拉电阻靠近OD输出端:当主从设备都为OD模式时,上拉电阻放在信号线中间位置;当主设备为软件模拟I2C通讯,从设备为OD模式时,上拉电阻放在靠近从设备位置。

2.信号线负载电容

通信速率(kbps)负载电容上限(pf)
100400
400200

 

3.信号线串联电阻(通常取值100~200欧)

    a. 阻抗匹配,减少信号反射

    b.在恶劣环境中,有效抑制总线上的干扰脉冲。

参考:https://blog.csdn.net/zyboy2000/article/details/5789005

 

 

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值