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.

[参考译文] PCM9211EVM-U:DIT 在评估板上不工作

Guru**** 2465890 points
Other Parts Discussed in Thread: PCM9211

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1272380/pcm9211evm-u-dit-not-working-on-evaluation-board

器件型号:PCM9211EVM-U
主题中讨论的其他器件:PCM9211

您好!

我有 PCM9211 EVM、无论做什么、都无法使 DIT 正常工作。 我已经尝试使用默认的 init 脚本、即 CodecControl 中包含的"PC Record via TAS1020 to MPIOC in DIT output"脚本、并通过寄存器检查器手动设置寄存器。 我已验证 I2S 输入正常工作、因为当通过 PCM9211的主输出路由到 TAS1020B 时、我可以成功从同一输入接收数据。 我还确认了 MPO0的 ahrdware 工作正常、因为当我选择 RECOUT0或 RECOUT1时、音频通过正常。 只是当 MPO0被设定为 TXOUT/DIT 时、它才起作用。

我的音频分析仪可以看到存在采样率为44.1kHz 的有效 SPDIF TOSLINK 信号、但没有音频数据、就像静音一样。 我也尝试过另一个 TOSLINK 接收器,没有成功。

谢谢

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

    您好 Elliot、根据您的描述、选择 DI/RECOUT0/RECOUT1 的多路复用器工作正常、其设置正确。 在调试问题时、需要检查或考虑以下几点:

    • 我首先要检查的是独立运行的 DIT。 通过提供外部时钟和数据(SCK、BCK、LRCK 和数据)可使 DIT 模块独立运行。 在独立模式下、必须通过 MPIO _C 将音频和时钟数据引入设备。 要启用独立模式、请将寄存器6Fh/MPCSEL[2]设置为"101"。 有关更多详细信息、请参阅数据表。
    • 验证  所有 I2S CLKS 是否符合数据表 DIT 部分(第9页) 的规格 DIT 可以接受128fS、256fS 或512fS 系统时钟。 通过使用寄存器 TXSCK[2]:0]来设置时钟比率。
    • 从多路复用器中选择一个连接到 DIT 输入的不同输入。
    • 使用寄存器60h/TXSSRC[2]选择 DIT 的系统时钟源。 使用寄存器60h/TXPSRC[2]选择 DIT 的 PCM 音频数据源(bck. LRCK、and Data)。 请验证这些寄存器。
    • 主输出端口和辅助输出端口(可通过 MPIO _B 输出)都是支持 I2S、RJ 和 LJ 的 PCM 输出。 DIT 输出是 S/PDIF 信号输出。
    •  使用寄存器62h/TXVFLG 检查 DIT 的有效标志。 我猜,这个位 现在应该在标记你。
    • 检查不同的设置、例如地址= 38h 和位 PFSPO[2]:计算得出的端口信息或 地址= 40h、以确保  与 DIT 相关的其他寄存器中的 DIT 未断电。

    此致、

    阿拉什

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

    尊敬的 Arash:

    感谢您的指导。 我已经完成了您的每一项建议:

    • 我首先要检查的是独立运行的 DIT。 通过提供外部时钟和数据(SCK、BCK、LRCK 和数据)可使 DIT 模块独立运行。 在独立模式下、必须通过 MPIO _C 将音频和时钟数据引入设备。 要启用独立模式、请将寄存器6Fh/MPCSEL[2]设置为"101"。 有关更多详细信息、请参阅数据表。

    如果跳线 W9断开、DIT 独立运行可以成功。 连接跳线 W9后、没有输出。 观察示波器上的时钟信号可以发现 PCM9211主输出和尝试同时驱动时钟的 TAS1020b 之间存在冲突。

    • 验证  所有 I2S CLKS 是否符合数据表 DIT 部分(第9页) 的规格 DIT 可以接受128fS、256fS 或512fS 系统时钟。 通过使用寄存器 TXSCK[2]:0]来设置时钟比率。

    我使用的是标准 PCM9211 EVM、因此所有时钟都应符合要求。 寄存器目前显示系统时钟被设定为256F (缺省值)

    • 从多路复用器中选择一个连接到 DIT 输入的不同输入。

    将 DIT 多路复用器设置为使用 ADC 输入失败、除非将 MPIO_C 功能设置为 ADC Standalone (独立)。 跳线 W9必须再次被拆除。 我不理解为什么 MPIO _C 的设置在这种情况下很重要、因为它未涉及到信号路径(ADC -> DIT)。 我认为或许这与 DIT 系统时钟源(reg 60h 中的 TXSSRC[2]:0])有关、但是当 MPIOC 设置为独立的 ADC 时、该寄存器的值将被忽略。 我尝试通过将 MPIOC 设置为 AUXIN1来调整 DIT 系统时钟源、但 TXSSRC[2]的值不允许我成功地 将音频从 ADC 传递到 DIT。  我本来以为正确的 值是000 (DIR/ADC 自动)或010 (ADC)、但这两种值都不起作用。 如果可以像所有其他设置一样通过单选按钮更改此设置、那么这将会更加有用、此时您必须在寄存器检查器中进行更改。

    • 使用寄存器60h/TXSSRC[2]选择 DIT 的系统时钟源。 使用寄存器60h/TXPSRC[2]选择 DIT 的 PCM 音频数据源(bck. LRCK、and Data)。 请验证这些寄存器。

    请参阅上面的注释

    • 主输出端口和辅助输出端口(可通过 MPIO _B 输出)都是支持 I2S、RJ 和 LJ 的 PCM 输出。 DIT 输出是 S/PDIF 信号输出。

    好的、是的、DIT SPDIF 输出是我尝试测量的输出。 我未使用主输出端口或 MPIO _B

    •  使用寄存器62h/TXVFLG 检查 DIT 的有效标志。 我猜,这个位 现在应该在标记你。

    在所有情况下、TXVFLG 有效性 标志显示为0 (有效)

    • 检查不同的设置、例如地址= 38h 和位 PFSPO[2]:计算得出的端口信息或 地址= 40h、以确保  与 DIT 相关的其他寄存器中的 DIT 未断电。

    寄存器38h 和40h 都指示正常、默认操作



    谢谢

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

    尊敬的 Elliot:

    这是很好的 与上述实验你消除了很少的可能性 作为手头的问题的根源。

    如果独立操作运行正常、则 DIT 运行良好、并且 问题主要由您的整体通信和时钟造成。 请记住、您仍然可以使用我们的 EVM、但发送了错误的 clk、它无法正常工作。 您需要确保当它不按预期工作时、CLKS 是正确的、该操作需要通过 示波器来完成以查看边缘和数据格式。  

    当您通过 ADC (进行必要的修改)时,您可以在 DIT 看到它,这同样指向您的配置问题。 虽然我会考虑更多可能的诊断并在下周结束之前将其发送给您、但最终您必须使用上述2项观察结果(工作案例) 作为起点 、并尝试 它们以找出配置问题。  

    此致、

    阿拉什