多从器件的IIC总线调试心得

画了个Sheild板子挂满了各种IIC Sensor器件和传感器模组,结果发现调起来并不容易。。。

上拉恢复波形不好,其实跟上拉电阻关系不大,

下面这个波形,我即使把上拉电阻改小到1k到330R都很难纠正好,最后发现原因是总线上有其他IIC器件的Vcc供电没有给上。导致CLK DAT引脚的上拉充电恢复电流,被器件体内的保护二极管泄放到了他们各自Vcc上,相当于各自变相通过IIC两个总线给自己bootstrap供电了。所以导致总线波形上升恢复斜率不足,难看。容易导致通信失败。

 

 

 

 

 

 

 

20k时严重的上升恢复不足,原因是很多器件Vcc未供电,3.3v上拉的电通过各器件体内的二极管被Vcc抽走了。

 

把总线所有器件的Vcc都供上,就不存在这个问题了。

所有器件Vcc供电正常时,50k时波形非常漂亮,下拉也ok,虽然MCU下拉不能到底

 

所以说,正常情况下的IIC总线,总的等效上拉电阻只需要1k 到 10k 就可以了,CLK越高速,就用越小的电阻。具体以波形为准。

另外,上拉电阻过小,过于强上拉,也会导致下拉电压低电平不能到达底部0.2v,比如某些CMOS输出的MCU就拉不好,只能下拉到个半截,波形也很难看。所以这个“拉底电平”跟“上升斜率坡”是一对矛盾关系 ,需要去平衡微调。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章