TI论坛
直播中

caosurround

13年用户 947经验值
私信 关注
[问答]

TLV320AIC3100 CODEC I2C通讯无应答是怎么回事?


  • 最近项目使用到贵公司的TLV320AIC3100 CODEC芯片,但I2C通信一直无ACK,用示波器观察i2c信号,从地址无误且时钟为40khz。软件地址配置:I2C_BOARD_INFO("tlv320aic3100", 0x18),  硬件原理图如下,MCLK悬空是否有问题呢? 非常感谢!

回帖(3)

吴巧芬

2024-10-29 15:51:18
 MCLK  是芯片的主时钟。
举报

李小雯

2024-10-29 15:51:26
 MCLK不会影响I2C通讯,但是MCLK是内部PLL的输入时钟,你现在悬空,是用BCLK或其他时钟作为PLL输入时钟吗?如果不是,MCLK要为内部PLL提供主时钟。
另外,I2C时序图能发过来看下吗?AIC3100作为从机的地址为多少?
举报

飞毛腿452

2024-10-30 17:03:21
根据您的描述,TLV320AIC3100 CODEC I2C通讯无应答的问题可能由以下几个原因导致:

1. 硬件连接问题:请检查I2C总线上的连接是否正确,包括数据线(SDA)和时钟线(SCL)是否正确连接到TLV320AIC3100的相应引脚。同时,确保I2C总线上没有短路或断路。

2. 地址配置问题:您提到的软件地址配置为I2C_BOARD_INFO("tlv320aic3100", 0x18),这意味着设备的I2C地址为0x18。请确认这个地址是否正确。TLV320AIC3100的I2C地址通常为0x18(7位地址)或0x90(8位地址)。请检查您的硬件原理图和芯片手册,确保地址配置正确。

3. MCLK悬空问题:MCLK(主时钟)悬空可能会导致I2C通信问题。建议您为MCLK提供一个合适的时钟源,以确保I2C通信正常工作。您可以使用一个外部时钟源或从您的系统中获取一个时钟信号。

4. 时钟频率问题:您提到时钟频率为40kHz,这是I2C通信的标准速率之一。但是,TLV320AIC3100可能需要更高的时钟频率。请查阅芯片手册,了解其对时钟频率的要求,并相应调整您的I2C通信速率。

5. 电源问题:请确保TLV320AIC3100的电源电压和电流满足芯片手册中的要求。不稳定或不足的电源可能会导致I2C通信问题。

6. 软件问题:请检查您的I2C通信代码,确保正确实现了I2C通信协议。您可以尝试使用一个已知良好的I2C通信示例代码,以排除软件问题。

综上所述,建议您从硬件连接、地址配置、MCLK悬空、时钟频率、电源和软件等方面进行排查,以找到导致I2C通信无应答的原因。希望这些建议能帮助您解决问题。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分