[求助] I2C可以挂几个设备

flower_huanghua   2015-3-11 16:35 楼主
CPU的I2C线比较长,可以挂几个I2c几个,挂个四个设备可以工作么。如果不能工作,应该注明弄。
尽力而为!

回复评论 (5)

没有数量限制,唯一的制约指标是总线上的等效电容容量不能超过400pF。注意,导线越长则电容量越大,如果单导电的电容量超标则一个设备也带不了。
上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2015-3-11 19:00
有地址限制吧,比如用7位地址时,除去保留的全0(作群呼用),最多带127个设备。 如果线长,分布电容大,可尽量降低通信速率,不过需查数据手册确认芯片对最低速率的要求。 ------- 20150312 纠正一哈:用7位地址模式时,要去掉16个保留地址,因此最多可带112个设备。 昨回帖时未找到确切根据,现在补上贴图。 本帖最后由 仙猫 于 2015-3-12 11:20 编辑
  • i2c.png
点赞  2015-3-11 19:26
跟电容有关!连接到总线的接口数量只由总线电容是400pF的限制决定。
点赞  2015-3-11 20:27
I2C设备的地址一般有7位地址和10位地址,这个是个数上的限制
点赞  2015-3-11 20:37
三楼说得有道理。

实际上,决定最多可带器件数量的,有两个是关键的:


1、寻址范围。即当达到寻址极限时,就没办法再增加了。



2、速度、负载、驱动能力。 即,在一定高的速度时,总线上的信号没有办法使接收设备识别时,也就达到极限了。

      如在一定速度下,负载(实际上表达的主要问题是时间常数)使驱动的信号变形,接收设备可以识别的临界点上,达到了最大所带设备数,但是,降低速度后,又可以再增加设备了。

     再者,一般的I2C的负载用一只某一值的电阻。如果I2C设备驱动能力都很大,可以再加大负载----即减小电阻,那么,电阻减小了,它与电容的乘积也减小了。这时就可以多带几个器件(设备)了。





-----------这是某公司I2C器件的频率要求:

a1.jpg



------------  这个是某一器件的驱动能力(也没有给出额定值,只给了极限值)


a2.jpg
点赞  2015-3-11 21:10
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复