打印
[STM32]

为什么有的单片机有3路I2C,I2C不是总线吗?只需要一路就可以了啊!

[复制链接]
2991|14
手机看帖
扫描二维码
随时随地手机跟帖
沙发
aozima| | 2014-3-30 00:39 | 只看该作者
如I2C的EEPROM可以自己设定地址,实现多个器件并联。
而如何是不能设置地址的传感器,则只能连接一个。

然后就是性能和多路备份的原因。

使用特权

评论回复
板凳
nin124|  楼主 | 2014-3-30 00:43 | 只看该作者
aozima 发表于 2014-3-30 00:39
如I2C的EEPROM可以自己设定地址,实现多个器件并联。
而如何是不能设置地址的传感器,则只能连接一个。

是啊,我也碰到过不能配置地址的器件,我也不明白为什么有的I2C器件不能配置地址呢?

使用特权

评论回复
地板
ayb_ice| | 2014-3-30 07:53 | 只看该作者
单独是有好处的,有些器件速度不一样

使用特权

评论回复
5
diy1997| | 2014-3-30 09:37 | 只看该作者
还有,要和本机其它芯片通信,还要和其它机通信.

使用特权

评论回复
6
叶伤| | 2014-3-30 10:30 | 只看该作者
为什么有的家庭有3个厕所,厕所不是通用吗?只需要1个就可以了啊!

楼上的大神们都指出来了,只不过我认为应添加一个原因,有时候要考虑到线路布局,多路可以轻松达到就近原则,免得只有一个厕所时路线太长了走不到厕所,半路数据就掉了。

有些器件地址固定,考虑的是一般都只用单个元器件,如PCF8563,谁吃饱了撑的在一个系统上弄两个时钟。有些则是节省rom成本,加了一个并不是人人需要的地址功能,可能rom要翻倍。

使用特权

评论回复
7
nin124|  楼主 | 2014-3-30 13:05 | 只看该作者
叶伤 发表于 2014-3-30 10:30
为什么有的家庭有3个厕所,厕所不是通用吗?只需要1个就可以了啊!

楼上的大神们都指出来了,只不过我认为 ...

“布线就近”太牵强了;PCF8563是有内部地址的。

使用特权

评论回复
8
ningling_21| | 2014-3-30 19:49 | 只看该作者
有些I2C器件可以达到100K速度,有些器件不行,总线分别开来就容易实现了。。。

使用特权

评论回复
9
banalmaster| | 2014-3-31 11:15 | 只看该作者
楼上各位都说了一些,我总结一下,并说说自己的想法。
1. 多个I2C模块可以用于备份,来高系统的可靠性;
2. 可以用不同I2C连接速度不同的器件,方便CPU操作管理;
3. 不同I2C可以连接不同功能的器件,方便操作。

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
hp34401a + 1 赞一个!
10
cjseng| | 2014-3-31 11:21 | 只看该作者
9楼、10楼说的很有道理,楼下的你看呢?

使用特权

评论回复
11
wolension| | 2014-4-1 08:28 | 只看该作者
10楼也太不谦虚了吧:lol

不是一般都与其他功能复用吗?比如GPIO,比如USART等,单独的纯I2C接口很少吧?
既然这样,那应该是为了芯片有更大的适应性,兼顾不同的应用需求而已。

使用特权

评论回复
12
znmcu| | 2014-4-1 14:43 | 只看该作者
主要还是引脚冗余,方面进行设计

使用特权

评论回复
13
MK60| | 2014-4-2 09:07 | 只看该作者
用过RTOS就知道了。
如果几个任务要同时用I2C,有多个硬件I2C就不需要分时操作。

使用特权

评论回复
14
lkl0305| | 2014-4-2 10:17 | 只看该作者
是啊,若要同时对多个I2C进行操作呢?

使用特权

评论回复
15
很忙| | 2014-4-2 14:03 | 只看该作者
有没有遇到过这样的现象。挂了很多个I2C设备,但是有些设备不是一直工作的。由于功耗的需求,在一些I2C设备不可能同时供电。这样的情况的话,当你用一个I2C总线的时候,在其中一个或2个设备切断电源后,可能整个I2C总线都不工作了。当然这种情况可能通过硬件来解决,但是硬件可能会增加成本。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

36

主题

275

帖子

1

粉丝