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.

[参考译文] TAC5112:TAC5112 环回

Guru**** 2813875 points

Other Parts Discussed in Thread: TAC5112

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1603467/tac5112-tac5112-loopback

器件型号: TAC5112

你好

如本期查询所述、当通过 MCU 的 SPI 配置(所以不依赖于 EV 套件)时、我的 ADC 路径可以使用 TAC5112: 配置 wclk/BCLK 生成自非标准 MCLK — 音频论坛-音频 — TI E2E 支持论坛
现在我需要配置并测试 DAC 路径。 将数据写入 I2S(尚未)没有简单的方法、因此我很好奇 INTF_CFG1 寄存器(地址= 0x10)上的环回设置所做的操作是什么。
如果这会将来自 ADC1 的数据路由回 DAC1、从而将一些数据馈入 DAC1 并重新创建“名称“信号并将其输入到 IN1P、那我会感到很奇怪。 这将是我测试 DAC 路径的简单方法。 我的理解是否正确? 可以假设 ADC1 和 DAC1 可以同时以这种方式运行以进行测试吗?

尝试上述操作(将 0xE0 写入寄存器 0x10)时、我注意到 DOUT 信号变为高电平。
寄存器 0x10 的 DOUT_DRV[2:0]值应该设置为什么? (在 I 设置环回之前其值为 0x50)

假设 DAC1 以正确配置为向 OUT1P/M 显示信号、我预计会得到类似于 IN1P 的波形、但没有波形。
(我还在考虑将 dout 硬接线至 DIN 以获得相同的效果?)

Dac1 和 Dac2 按如下方式配置(时钟已根据 ADC 操作进行设置):

寄存器值   
0x11、0x80 启用 PASI DIN
0x28、0x20  将 PASI DIN 时隙 0 设置为 CH1
0x29、0x21  将 PASI DIN 时隙 1 设置为 CH2
0x64、0x20  将 DAC1 路由至 OUT1P、将 OUT1M 作为差分路由
0x65、0x21  DAC 通道 1 宽 96KHz 模式
0x66、0x20  通道 OUT1M 0dB
0x6B、0x20  将 DAC2 路由到 OUT2P、并将 OUT2M 作为差分路由
0x6C、0x21 DAC 通道 2 宽 96KHz 模式
0x6D、0x20 通道 OUT2M 0dB
0x76、0x0c 启用 CH1 CH2
0x78、0x40 上电 DAC  

谢谢你。

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

    尊敬的 Jas:

    这是可以实现的、但您需要使用环回混频器寄存器而不是 INTF_CFG1 寄存器。

    要在 DAC1 上启用 ADC1 环回:

    页 0x11、寄存器 0x5A = 0x40

    要在 DAC2 上启用 ADC2 环回:

    页 0x11、寄存器 0x60 = 0x40

    此致、

    Garret

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

    感谢您发送编修。

    想知道 第 0x11 页对于 5112 是否有效、SLASF24A 中没有记录该页。(可能没有记录?)   

    我曾尝试过 DAC1 的任何方法、但遗憾的是、在 OUT1P 处都没有看到任何模拟信号 — 假设我的 DAC 配置正确!
    请确认此编解码器的页面。 如果完全正确、我想我的 DAC 配置不正确。

    非常感谢、

    Jas

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

    尊敬的 Jas:

    从 SLASF24A 的第 214 页开始、记录了第 0x11 页(第 17 页)。

    您的 DAC 配置看起来正确 — 您是否确保 ADC 通道也已启用并通电? 您发送的片段仅启用 DAC 通道并加电。

    此外、在写入第 17 页寄存器之前、您是否已将 0x11 写入第 0 页以设置该页面?

    此致、

    Garret

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

    尊敬的 Garret:

    很抱歉、回复延迟。

    我返回到 EV 套件和 Purepath3 尝试使 ADC 和 DAC 协同工作(采用 AC-MB 上的 USB 输入、因此不是我们的正常 AIF/I2S/时钟配置)。 在这方面取得了一些成功、但也有一些观察、我希望您能帮助我。

    已尝试使用 i2c 监控器使用以下命令读取/写入环回寄存器页 0x11、寄存器 0x5A、但 1) 环回不起作用、2) 使用读取命令不读回任何内容。 (如果我离开冗余 00,则读取失败)

    W a0 00 11   #将 PAGE 设置为 0x11
    w a0 5a 40   #环回 ADC1 o/p 至 DAC1 i/p
    R a0 5a 00    #读回寄存器 5a

    数据表中指出、coeff 寄存器似乎想要执行多字节读取(我们的 MCU 实现方案无法执行这一操作)。 i2c 监控器可以执行此操作吗?如果是、正确的写入和读取命令是什么? 我希望 i2c 监控器能够顺利处理。

    如果不符合上述要求、我将 DOUT 连接到 AC-MB 上外部 ASI 接头上的 DIN 引脚、这似乎暂时起到了测试 DAC 工作模式的作用(如果 OUT1P/M 处的 INI1P/M 信号产生良好的副本,尽管存在一些串扰干扰)。

    使用 PPC 预设配置、我将 ADC 和 DAC 设置配对、但会将启用 ADC(以及明显的上电寄存器)的延迟至同时启用 ADC 和 DAC 配置之后。 该序列是返回 MCU 代码的关键、因为我要设置 ADC、启用 i/p 通道并为 ADC 上电、然后 设置 DAC、启用 o/p 通道并为 DAC 上电、但也会保留 ADC 使能和功率位。 这个序列可能导致了我在开始时遇到的问题。

    延迟 ADC 和 DAC 的使能和上电、直到最终结果似乎适用于我们的应用。

    但是、我们的应用要求我们可以在任何时候单独启动和停止 ADC 和 DAC、并可能动态更改设置、因此我想了解允许采用这种灵活性的事件序列是什么? 我是否需要将 ADC 和 DAC 断电以更改其中一个 ADC 和 DAC 的配置、还是要充分禁用它们? 希望大家明白我的来源。

    回到环回系数寄存器、了解如何在单元测试中正确读取/写入这些寄存器仍会很有用、尽管我们将从 MCU 到编解码器使用 SPI 总线、到目前为止、它的实现只需要一个 8 位寄存器值、因此我不确定它是否可以处理多字节操作。

    非常感谢!

    Jas

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

    尊敬的 Jas:

    是的、I2C 监控器可以处理多字节读取。 读取命令中寄存器后的值指定要读取的字节数、因此命令“r a0 5a 00“表示从寄存器 0x5A 开始读取 0 个字节、这就是您没有看到任何内容的原因。 将该值更改为 01、从而读取 1 个字节、您应该读回 0x40。

    不建议动态更改大多数设置 — ADC 和 DAC 都应断电、但如有必要、可以进行一些更改。 检查当器件处于“Active"(“(活动(活动)时、哪些部分在 PPC3 中不显示为灰色。

    此致、

    Garret