This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TAS5721:TAS5721不通过 I2C 进行通信

Guru**** 2455560 points
Other Parts Discussed in Thread: TAS5721

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/747703/tas5721-tas5721-does-not-communicate-over-i2c

器件型号:TAS5721

大家好、我已经使用 TAS5721构建了定制板。 遗憾的是,在构建实际的 PCB 之前,我没有对设计进行任何测试,现在我支付了价格。 情况如下:

 -对于应用原理图,我使用了数据表中的„2.1系统”应用示例

 -电路正在获得所有必要的电源:AVDD/DVDD 3.3V、PVDD 13V

 -电路从所有电源汲取大约40mA 的电流总结

 -在进行任何测试之前,我尝试执行重置序列(PDN 低电平、RST 高电平、PDN 高电平、RST 低电平周期)

 -我无法使芯片通过 I2C 进行通信。 我使用的是 Raspberry Pi i2cdetect 工具(PCB 是 RPi 帽子),它基本上会传输地址为0x0到0x77的 I2C 数据包,并检查 SDA 总线是否被拉低,在后续数据包的传输过程中,从器件的确认应该是在 SDA 上注册获得应答的地址。 TAS 未在0x34或0x36上拉低 SDA (我已在 ADDR/FAULT 引脚上尝试过上拉和下拉电阻器)、因此芯片内的 I2C 状态机似乎无法正常工作(或根本无法正常工作)。 因此,i2detect 不会在0x34/0x36地址上显示任何内容。

 -我已经用示波器检查了 I2C 总线- I2C 传输似乎正常、SDA 实际上在0x34和0x36数据包上都保持高电平、其中从器件的确认应该是- TAS 没有响应。  

我需要从最小应用开始、这将使 TAS5721通过 I2C 进行通信、我的问题是:应用中需要的最少部件/信号是什么、才能使 TAS5721在 I2C 上做出响应? 我猜测 AVDD/DVDD/PVDD 都是必需的,也需要 MCU 的 RST/PDN 来执行正确的复位序列。 I2C 总线还应使用哪些外部组件/信号来至少确认发送到 TAS 的地址数据包? 是否需要 MLCK? 我从数据表中了解到、可以在没有 MCLK 的情况下完全运行 TAS5721吗?

谢谢、

wm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、WM、
    我们首先需要确认的是 I2C 通信。 请读取寄存器0x00以查看它是否为默认值'0x6c'。
    数据表中的地址0x34和0x36实际上是8位格式、您可以尝试使用7位地址0x1A 和0x1B 吗?
    下面是最小配置:
    X1B 00! 出厂调整
    X21 00 42 03! 将子通道混频器设置为(L+R)/2
    X05 84!退出关断模式并将设备配置为2.1模式
    X07 30!将主音量设置为0dB
    此致、
    郑少文
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Shawn、感谢您的回答。 我已经用最少的组件构建了另一个原型 PCB、这次我能够使用0x1B 地址通过 I2C 与 TAS5721进行通信。 到目前为止、我已经检查了0x00寄存器、它确实读取了0x6c。 可能我在组装第一个原型的过程中不得不做出一些错误。 另外、感谢初始化序列的示例-希望我能够在完成第二个(这次运行)原型的汇编后尝试它。

    再次感谢!

    wm