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.

[参考译文] TLV320DAC3100:TLV320DAC3100:将 TLV320DAC3100与 AM3358连接

Guru**** 2568585 points
Other Parts Discussed in Thread: AM3358, TLV320DAC3100EVM-U, TLV320DAC3100

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/906129/tlv320dac3100-tlv320dac3100-interfacing-tlv320dac3100-with-am3358

器件型号:TLV320DAC3100
主题中讨论的其他器件:AM3358

您好!

对于相关的问题、我有以下两个问题

1.我们尝试运行附加的工具和脚本。 但无论是输出还是音频声音、都无法获得任何相应的输出。

因此、我们要求提供使用附加工具和脚本的确切步骤。  

此外、我们还尝试将 TLV320DAC3100IRHBR 与 AM3358处理器连接、并且在 i2cdetect 中将 地址显示为0x18、因此只需确定我们的连接是否正常即可。  

因为在给定的脚本中、所提到的地址为0x30。 因此、我们对这两个地址感到困惑。

请解决我的问题。

谢谢!!!

此致、

Yash Kishore

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

    大家好、Kishore-San、

    欢迎使用 E2E、感谢您关注我们的产品!

    能否重新连接您提到的工具和脚本? 我无法在您之前的帖子中看到它。

    有关 I2C 通信的问题、取决于您的工具用于读取 I2C 地址的格式。 在我们的 TI 工具中、正确的 I2C 地址将是0x30 (0011 000x)。 但是、在其他工具中、不考虑 LSB、因此地址会向右移位、从而产生0x18 (001 1000)。

    此致、
    Luis Fernando Rodríguez S.

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

    您好、Luis、

    感谢您的回答。

    请查找您在上一个主题中共享的附加工具和脚本文件。

    此外、我将共享该链接。

    https://e2e.ti.com/support/audio/f/6/t/889265

    谢谢、此致、

    Yash Kishore

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

    大家好、Kishore-San、

    我提供的这个脚本直接用于我们的 TLV320DAC3100EVM-U:

    http://www.ti.com/tool/TLV320DAC3100EVM-U

    脚本的格式为 w 30 xx yy、是"w" I2C 写入命令、"30" I2C 地址、"xx"寄存器地址和"yy"寄存器数据。 所有这些都是十六进制格式。

    如果您希望在其他电路中使用此脚本、则需要将脚本代码调整为终端设备将使用的正确语法。 例如、在您的应用中、0x18似乎是器件的 I2C 地址(也是正确的)。

    此致、
    Luis Fernando Rodríguez S.

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

    你(们)好

    我们已尝试在 Linux 环境中运行给定的脚本。 但无法通过 TLV 接收我们附加扬声器中的任何音频相关更改。

    请查找所附的日志来源文件。  

    现在、我们想知道如何配置 DAC IC (TLV)来接收来自它的音频?

    此外、如果我们需要进一步配置与 I2S 线路相关的任何内容、请告知我们。

    Thankse2e.ti.com/.../i2c_5F00_scrpt_5F00_log.txt  

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

    您好、Yash、

    抱歉、您是否可以获得 Linux 环境的整个 TLV320DAC3100寄存器设置? 这可以为我们提供更好的解决问题的方法、并了解您为何未正确接收 I2S 数据。

    谢谢你。

    此致、
    Luis Fernando Rodríguez S.

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

    您好、Luis、

    与在 Linux 环境中一样、我们使用基于命令行 的 i2cset 命令。 它可以将给定的值分配给 I2C 器件的给定寄存器。

    可以采用更好的方法来访问这些寄存器。 我之所以使用命令行1、是因为它易于访问。

    如果您希望我使用另一种方法、请告诉我。 因为我不是 Linux 专家。

    在这里、我要附加 i2cset 命令序列、我已经通过 I2C 访问将这些命令用于 TLV320DAC3100。

    谢谢。

    请注意、

    Yash Kishore

    e2e.ti.com/.../TLV-I2C_5F00_Write.txt

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

    您好、Yash、

    我对此问题有一些疑问。

    -发送命令时,您是否在 I2C 线路中获得了 ACK 位? 这是为了确保 I2C 通信成功。

    -在配置 TLV320DAC3100寄存器前后、您在耳机线路的共模电平或 D 类活动中是否看到任何差异?

    -您的系统中正在使用哪些时钟(MCLK、BCLK、WCLK)? 您是否具有其频率值?

    此致、
    Luis Fernando Rodríguez S.

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

    您好、Luis、

    以下是您的问题答案:

    您的查询: 发送命令时、您是否在 I2C 线路中获得了 ACK 位? 这是为了确保 I2C 通信成功。

    我的答案。 是的、当我发送 I2C 检测命令时、我接收 ACK 位。 它在控制台屏幕上显示地址0x18。

    Ubuntu@ARM:~$ i2cdetect -y -r 2.
    0 1 2 3 4 5 6 7 8 9 A b c d e f
    00:------------ ------------ ------
    10:------------ ------ 18 -------------- ----
    20:------------ ------------ ------------ --
    30:------------ ------------ ------------ --
    40:------------ ------------ ------------ --
    50:------ UU UU UU UU UU -------- ------
    60:------------ ------------ ------------ --
    70:------------ ------

    您的查询: 在配置 TLV320DAC3100 寄存器前后、您是否看到耳机线路的共模电平或 D 类活动有任何差异?

    我的答案:我将检查 D 类放大器的电平差、尽快分享。

    您的查询:您的系统中正在使用哪些时钟(MCLK、BCLK、WCLK)? 您是否具有其频率值?

    我的答案: 对于时钟、我猜是我在系统中使用的 BCLK。 为了供参考、我还附加了时钟引脚快照。  

    如果您需要任何进一步的信息、请告诉我。

    谢谢、此致、

    Yash Kishore

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

    您好、Luis、

    以下是您的问题答案:

    您的查询: 发送命令时、您是否在 I2C 线路中获得了 ACK 位? 这是为了确保 I2C 通信成功。

    我的答案。 是的、当我发送 I2C 检测命令时、我接收 ACK 位。 它在控制台屏幕上显示地址0x18。

    Ubuntu@ARM:~$ i2cdetect -y -r 2.
    0 1 2 3 4 5 6 7 8 9 A b c d e f
    00:------------ ------------ ------
    10:------------ ------ 18 -------------- ----
    20:------------ ------------ ------------ --
    30:------------ ------------ ------------ --
    40:------------ ------------ ------------ --
    50:------ UU UU UU UU UU -------- ------
    60:------------ ------------ ------------ --
    70:------------ ------

    您的查询: 在配置 TLV320DAC3100 寄存器前后、您是否看到耳机线路的共模电平或 D 类活动有任何差异?

    我的答案:我将检查 D 类放大器的电平差、尽快分享。

    您的查询:您的系统中正在使用哪些时钟(MCLK、BCLK、WCLK)? 您是否具有其频率值?

    我的答案: 对于时钟、我猜是我在系统中使用的 BCLK。 为了供参考、我还附加了时钟引脚快照。  

    如果您需要任何进一步的信息、请告诉我。

    谢谢、此致、

    Yash Kishore

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

    您好、Luis、

    当我输入您提供的命令时、我已从 CRO 捕获波形。(此处 附加快照)

    默认情况下、扬声器没有声音、但当我们运行命令序列时、DAC 开始发出嘶声。 我们还尝试通过写入数据表中提到的0x74寄存器来控制音量、您能确认我们使用写入寄存器来控制音量控制和值的范围吗?

    此外、让我们知道如何通过 I2S 线路播放声音文件。

    谢谢、此致、

    Yash Kishore

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

    您好、Yash、

    我注意到您提到您正在使用 BCLK、但为了使 I2S 数据完全传输、您还需要至少 WCLK。 此外、您共享的寄存器设置也需要 MCLK。

    您能否向我发送您正在使用的 BCLK、WCLK 和 MCLK 的一些捕获数据? 如果不使用 MCLK、我认为我们需要修改寄存器设置。

    此致、
    Luis Fernando Rodríguez S.

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

    您好、Luis、

    我正在使用所有时钟 MCLK、BCLK 和 WCLK。 我将分享所有时钟 ASAP.e2e.ti.com/.../Snaps.zip 的捕捉

    您还询问了扬声器共模信号。 当我输入您提供的命令时、我已从 CRO 捕获波形。(此处附加快照)

    默认情况下、扬声器没有声音、但在我们运行命令序列的那一刻、DAC 就开始发出嘶声。 我们还尝试通过写入数据表中提到的0x74寄存器来控制音量、您能确认我们使用写入寄存器来控制音量控制和值的范围吗?

    此外、让我们知道如何通过 I2S 线路播放声音文件。

    谢谢、此致、

    Yash Kishore

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

    您好、Yash、

    感谢您共享扬声器共模信号。 这意味着 I2C 写入是正确的。 共模信号只能通过 I2C 启用。 因此、可以正确写入寄存器。

    现在、我们需要关注 I2S 线路。 我们需要确保所有时钟 BCLK、WCLK 和 MCLK 都采用正确的协议(如果不是、我们需要调整寄存器配置)。 或者我们需要验证 PLL 设置。  

    我将等待时钟捕获、以验证它们是否设置正确。

    此致、
    Luis Fernando Rodríguez S.

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

    您好、Luis、

    我签入了 CRO、但在 TLV320DAC3100中没有为 MCLK、BCLK 和 WCLK 时钟获取任何信号。

    根据连接、之前已经连接了时钟线。

    请告诉我们、我们还需要为 I2S 配置任何内容。

    谢谢、此致、

    Yash Kishore

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

    您好、Luis、

    温和的提醒。

    我正在等待您的善意回应。

    谢谢、此致、

    Yash Kishore

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

    您好、Yash、

    为了在输出端获取音频、您需要定义 TLV320DAC3100将在主模式还是从模式下使用。 如果您使用此器件生成 WCLK 和 BCLK I2S 时钟、MCLK 就足够了(主控模式)。 否则、如果您的外部处理器是发送 I2S 时钟的处理器(从机模式)、则强烈不需要 MCLK。 我建议查看此文档以了解更多详细信息:

    https://www.ti.com/lit/an/slaa469/slaa469.pdf

    此致、
    Luis Fernando Rodríguez S.

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

    您好、Luis、

    我只需将 TLV320DAC3100配置为从器件。 现在、我的理解是、我们需要在主器件侧配置 WCLK 和 BCLK。 如果我错了、请纠正我的问题、并在 Linux 方面告诉我必须如何配置。

    谢谢、此致、

    Yash Kishore

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

    您好、Yash、

    正确、您需要在主器件侧配置 WCLK 和 BCLK。 我们实际上不支持 Linux、因此我无法提供有关它的详细信息。 我建议使用 BCLK = WCLK x (#通道) x (数据长度)。 这将实现正确的 I2S 数据传输。

    此致、
    Luis Fernando Rodríguez S.

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

    您好、Luis、

    我们尝试为 DAC 配置 I2S、但没有从 DAC IC 获得任何响应。 我们怀疑我们是否朝着正确的方向前进。  

    您能否共享任何参考以从任何其他环境配置 I2S?

    谢谢、此致、

    Yash Kishore

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

    您好、Luis、

    作为附加日志、两个寄存器设置失败。 我们可以忽略该故障、还是实际需要它?

    谢谢、此致、

    Yash Kishore