这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » i2c的从机数量有限制吗?

共3条 1/1 1 跳转至

i2c的从机数量有限制吗?

工程师
2024-08-31 10:03:43     打赏

我想请问一下,i2c的从机数量有限制吗?看到有人说最大八个从机,


I2C_SetSlaveAddr(I2C_MS_PORT, 1, 0x15, 0);           /* Slave Address : 0x15 */
I2C_SetSlaveAddr(I2C_MS_PORT, 1, 0x35, 0);           /* Slave Address : 0x35 */
        I2C_SetSlaveAddr(I2C_MS_PORT, 2, 0x55, 0);           /* Slave Address : 0x55 */
        I2C_SetSlaveAddr(I2C_MS_PORT, 3, 0x75, 0);           /* Slave Address : 0x75 */


这行代码,我是不是可以理解为从机数量最大为4?  另外,这几个地址有特殊意义吗?




关键词: I2C     从机    

助工
2024-08-31 10:04:05     打赏
2楼

I2C总线上通信节点的数量可以有很多,每个节点都可以做主机,或者过一段时间变为做从机,做从机时,可以配置4个地址。这个似乎意义不大,一个节点一般配置一个地址就可以了。

i2c的从机数量是有限制的,但数量的限制取决于i2c主机的能力和硬件实现。根据i2c规范,一个i2c主机可以支持最多112个从机地址,其中一部分是保留地址,不能使用。因此,实际可用的从机数量可能会小于112。

在你给出的代码中,设置了三个从机地址,分别是0x15、0x35和0x55。这样设置是合法的,只要这些地址没有超过主机所能支持的数量限制。但是,你需要确保每个从机的地址是唯一的,不与其他从机或保留地址冲突。

如果你想要连接更多的从机,你可能需要使用多个i2c总线或使用i2c总线的多主机模式。另外,一些i2c扩展芯片(如PCA9548)可以帮助你扩展i2c总线的从机数量。 


专家
2024-08-31 10:12:52     打赏
3楼

在软件上,地址肯定有限制啊。但可以通过拓展方式,突破这个限制。在硬件上,要考虑设备多了,信号衰弱的问题。


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]