Part Number:TCA9548A
工程师您好,我使用两个TCA9548扩展器进行i2c通讯,每个扩展器的每个接口连接4个不同地址的博世BMM150磁场传感器,因此总共连接有2*8*4=64个传感器,这些传感器也能够分别正常工作。但问题出现在当我同时在代码中begin这两个扩展器时,传感器的输出就会出现严重的噪声以及奇怪的数字出现(图一波形),但如果同时都只使用其中一个扩展器,另一个扩展器保持不使用状态,那么传感器的输出就非常正常(图二波形)。想请教可能是哪里出现问题呢?谢谢!
Amy Luo:
您好,
这两个TCA9548是挂接在同一个I2C总线吗?它们的地址是否设置的不同?您可以给出主控+TCA9548+传感器连接的架构框图吗?
zhongyi nie 说:当我同时在代码中begin这两个扩展器时,
这里具体是什么意思?这两个TCA9548的地址一样吗?
,
zhongyi nie:
您好,这两个TCA9548是挂在同一个I2C总线,地址不同,分别为0x70和0x71,结构图如下:
我使用arduino控制这两个扩展器的初始化以及通道选择,在初始化的时候,有一个.begin()的函数来初始化扩展器,如图:
但如果同时对两个扩展器均进行初始化后,输出就会错乱,但如果仅初始化其中一个扩展器,并随后仅使用这一个扩展器的话,则输出完全正常,若我还有表述不清的地方您可以指出,我进行详细的说明
,
Amy Luo:
这两个TCA9548地址不同,在读取传感器数据时不应该在总线上冲突。初始化TCA9548具体是做哪些操作?同时您可以用示波器抓一下I2C通信波形吗?看下I2C波形是否存在异常?