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.

[参考译文] TLV320ADC6140:无数字输出

Guru**** 2386610 points
Other Parts Discussed in Thread: TLV320ADC6140, AM5729, AM5728
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1271103/tlv320adc6140-no-digital-output

器件型号:TLV320ADC6140
主题中讨论的其他器件: AM5729AM5728

大家好、 从 TLV320ADC6140芯片获取任何输出时目前遇到一些问题。 以下是我的配置:

tlv320adc6140:tlv320adc6140@4c {
兼容="ti、tlv320adc6140";
#sound-Da-cells =<0>;
寄存器=<0x4c>;
TI、gpi-config =<0 0 0 0>;  
TI、GPIO-CONFIG =<2 2>;  
TI、GPO-CONFIG-1 =<0 0>;  
TI、GPO-CONFIG-2 =<0 0>;  
TI、GPO-CONFIG-3 =<0 0>;  
TI、GPO-CONFIG-4 =<0 0>;
RESET-GPIO =<&GPIO6 20 GPIO_ACTIVE_HIGH>;  
状态="可以";
};

我在主模式下使用 McASP 来提供 BCLK 和 FSYNC、我已确认它们遵守以下公式:
blck >= FSYNC * word_length *#_channels

ALSA 正在正确地拾取使用 simple-sound-card 创建的声卡:
[ 1.602680] asoc-simple-card sound-adc:tlv320adcx140-codec.2-004C <-> 48460000.McASP 映射 ok

与芯片的 I2C 通信正常。

作为一项测试、我目前将 SDOUT 引脚保持未连接到我的 AM5729板、以便完全查看芯片的串行输出、而无需担心其他任何事情。 然而、尽管适当的时钟以正确的频率启动、但在运行 arecord 时、线路上没有信号。 我的输入信号通过线路输入。 我还运行了 alsamixer、并确认了在输入多路复用器设置为 LINE_IN 时一切都取消静音。  

非常感谢您提供任何帮助、

杰瑞德

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

    尊敬的 Jared:

    为了 帮助我进行故障排除、您能否提供 ADC6140的寄存器转储?

    此致、

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

    这是一个 I2C 转储。 如果您需要任何其他信息、请告诉我

    i2cdump -y -a -f 2 0x4c

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

    尊敬的 Jared:

    寄存器0x76报告 ADC 通道已断电。 寄存器0x77还报告器件处于活动模式、所有 ADC 通道均已断电。 但0x75表示您正在尝试为 ADC 通道加电。 您所有的电源是否都正确?

    此致、
    J·麦克弗森

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

    您好!
    我的电源为3.3V、连接到 IOVDD、Areg 为内部生成。 只是更新、我注意到有一个时钟错误中断触发(很可能是由于 McASP 在启动时发送了一个脉冲)。 但是、在运行 arecord 时、该中断被清除、0x73读取正确的值 f0、指示4个输入模拟通道已启用。 遗憾的是、这不会导致寄存器0x75-0x77发生任何变化。 我将在下面附加一个更新的 i2cdump、这些 i2cdump 是在 arecord 运行时执行的:


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

    尊敬的 Jared:

    您的寄存器看起来不错、您能否确认 BCLK 和 FSYNC 的运行情况?

    此外、当您写入器件时、请参阅第9.2.1.2节中概述的设计序列。 产品说明书的某些部分、以确保正确运行。  本节后面有一个示例脚本可提供帮助。

    此致、

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

    ARecord -D HW:1、0 -C2 -f S16_LE -r 48000 test.wav

    BLCK:1.5MHz
    FSYNC:39.062kHz

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

    尊敬的 Jared:

    您提供的 BLCK 和 FSYNC 频率可能会产生某种形式的 ASI 总线时钟错误。 是无效 BCLK:FSYNC 比率还是一起无效的 FSYNC。 这将立即关闭录音通道。

    有关支持的 FSYNC 频率(必须是44.1kHz 或48kHz 的倍数)和 BCLK 频率、请参阅数据表中的第8.3.2节。

    此致、

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

    大家好、Daveon

    我可以看到时钟频率问题、并正在解决该问题的过程中。 想知道您是否可以为我指明从 BLCK 到 FSYNC 频率的分频控制的正确方向。 McASP 设计指南参考了 Rx 快速入门指南 位于 BCLK 和 FSYNC 之间。 但是、我似乎在数据表中找不到任何对这一点的引用、也无法在寄存器轮廓内找到对分频到 FSYNC 的任何控制。 我可以看到、在给定的系统时钟频率为2.4576MHz 时、我需要从 SYSCLK 向下使用512分频系数来实现48kHz 的 fsync、希望这个问题应该会解决。

    此致

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

    尊敬的 Jared:

    需要注意的是、您可以按照第8.3.2节的表所述提供必要的 BCLK 和 FSYNC 频率、也可以在仅提供 MCLK 的主模式下配置器件、以生成较低抖动的 ASI 时钟(BLCK 和 FYSNC)。 这是两种实现正确时钟的常用方法。 有关后者的更多信息、请参阅此处: 配置和操作 TLV320ADCx140作为音频总线主器件

    至于 AM5728的 McASP 编程、很抱歉、我 对该器件不是很熟悉。 请将问题发布给 Sitara MCU 专家、他们将能够为您提供帮助。

    此致、