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.

[参考译文] TLV320AIC3204:正确的时钟设置

Guru**** 2482105 points
Other Parts Discussed in Thread: TLV320AIC3204

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1134498/tlv320aic3204-correct-clock-settings

器件型号:TLV320AIC3204

大家好、

我 正在尝试使我们的编解码器与12MHz 晶体一起工作。 我们仅为应用连接了 MCLK。 是否可以使用12MHz 时钟配置 TLV320AIC3204、或者是否需要将其配置为 11.2896MHz 或12.288MHz?

我已经包括了我们的编解码器集成原理图。 是否有人能够帮助检查、以确保我们的设置正确、并可能有助于此设置的正确寄存器设置?

谢谢!

e2e.ti.com/.../codec_2D00_schematic.pdf

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

    您好!

    很抱歉、我们 的编解码器专家延迟了至少24小时回答您的问题。

    感谢您的耐心等待。

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

    谢谢

    我想我们可能已经解决了这个问题、但我们还没有对其进行测试。 我们将在明天进行测试。

    根据应用参考指南(www.ti.com/.../slaa557.pdf)第78页的表2-27、这些是我们针对44.1kHz 采样率所做的设置:

    ################################
    ADC 的#个时钟设置
    编号-->
    编解码器接收到的#:MCLK = 12MHz
    采样率为44.1kHz
    ################################
    编号
    #选择第0页
    宽30 00
    编号
    #寄存器6 - PLL J = 7
    宽30 06 07
    编号
    #寄存器7 - PLL D = 560
    宽30 07 02 30
    编号
    #寄存器18 - NADC = 3、mAdc = 5
    宽30 12 83 85
    编号
    ################################

    ################################
    DAC 的#时钟设置
    编号-->
    编解码器接收到的#:MCLK = 12MHz
    采样率为44.1kHz
    ################################
    编号
    #选择第0页
    宽30 00
    编号
    #寄存器11 - NDAC = 5、MDAC = 3
    宽30 0B 85 83
    编号
    #寄存器13 - DOSR = 128
    宽30 0D 00 80
    编号
    ################################

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

    您好!

    我对原理图的评论:

    • 我看不到通过 DIN/DOUT 连接到某种 DSP 的 WCLK/BCLK 到主机的连接、这是 DSP 主机、然后您需要将 MCLK 与 DSP 中的时钟同步。 请参阅此应用。 有关更多信息、请注意、尤其是在使用 XTAL 时。

    https://www.ti.com/lit/an/slaa469a/slaa469a.pdf?ts=1663257242149&ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTLV320AIC3204

    • 我看不到 I2C 线路的上拉电阻、只 需交叉检查是否需要。
    • IN1和 IN2的模拟输入网与编解码器引脚交换、只需进行交叉校验。
    • 建议在 R65/66/67/68上使用2.2K
    • 通常、在音频插孔 TRRS 中、连接是左音频、右音频、MIC 和 GND、因此请交叉检查这是否是目标应用。
    • 将交流耦合电容放置在 in3线路上。
    • 请查看此应用中建议的电源定序。 注释。

    https://www.ti.com/lit/an/slaa492a/slaa492a.pdf?ts=1663260343219

    • EVM 原理图的链接、这可能会有所帮助。

    https://www.ti.com/lit/ug/slau266a/slau266a.pdf?ts=1663257667247&ref_url=https%253A%252F%252Fwww.ti.com%252Ftool%252FTLV320AIC3204EVM-K

    在配置上:

    • 交叉校验第0页寄存器4、5、以确保时钟路径和 PLL 被启用并且比率正确
    • 应更正以下错误:mAdc=3、NADC=5
    • 有关示例、请参阅第4章。

    此致。

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

    我正在与 Zach 一起进行这个项目。

    编解码器未连接到任何 DSP。  名称中包含"DSP"的网络名称是因为我们将编解码器视为 DSP 类型。  系统中唯一的另一个处理器是微控制器、它通过 I2C 总线与编解码器进行通信。

    但是、我们需要知道:

    -如果我们不与另一个 DSP 或处理器通信、我们是否需要驱动 WCLK/BCLK 线路?

    除此之外、解决您的顾虑:

    -我们在另一页上有 I2C 上拉电阻器 

    我们将使用2.2K 的电流

    我们有定制的 MIC/音频输入布线、  

    - in3线路在另一页上进行交流耦合

    -我们的1.8V 和3.3V 电源同时出现。

    -我们已更改 MDAC/mAdc = 3、NDAC/NADC = 5

    谢谢、

    Carlos

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

    我已经附上了我们当前写入编解码器的内容的日志。 、您是否看到有问题? 我们确实注意到、在尝试计算时钟设置时、对于44.1kHz 采样率、PLLD 似乎需要为56、而不是560。 我们已经尝试了这两种方法、但对于电流配置、我们仍然无法在线路输出上获得任何输出。

    e2e.ti.com/.../AuraLog_5F00_Single-Ended-Loopback-IN1-Test-w-HP-OUT-V2-2022_2D00_09_2D00_16.log

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

    实际上、这是一个旧日志。  我们要发送的当前命令和读回的值如下所示:

    Aura V0.06 Starting up
    ----DEBUG-MODE-ON----
    Applied DSP HARDWARE reset
    Released DSP HARDWARE reset
    
    W 0x00 0x00 (Write PAGE reg)
    W 0x01 0x01 (write register)  COODEC:  Did SW Reset
    W 0x00 0x00 (Write PAGE reg)
    W 0x34 0x18 (write register)  CODEC:  GPIO output is INT2
    W 0x35 0x14 0x04 (write registter)  CODEC:  DOUT=GPO, DIN=GPI
    W 0x37 0x08 0x04 (write register)  CODEC:  MISO is INT1out, SCLK is GPI
    W 0x06 0x07 (write register)  COODEC:  Register 6 - PLL J = 7
    W 0x07 0x00 0x38 (write register)  CODEC:  Register 7 - PLL D = 56 (NOT  560)
    W 0x12 0x85 0x83 (write register)  CODEC:  Register 18 -  NADC = 5, MADC = 3
    W 0x1D 0x00 (write register)  CODEC:   (DAN) DISabled loopback register 29
    W 0x3D 0x01 (write register)  CODEC:  Set the ADC Mode to PRB_R1
    W 0x00 0x01 (Write PAGE reg)
    W 0x01 0x08 (write register)  CODEC:  Set Disable weak AVDD
    W 0x02 0xF0 (write register)  CODEC:   (Dan) DISable Master Analog Power Control
    W 0x3D 0x00 (write register)  CODEC:   Select ADC PTM_R4
    W 0x47 0x32 (write register)  CODEC:  Set the input powerup time
    W 0x7B 0x01 (write register)  CODEC:  Set the REF chharging time
    W 0x34 0x28 (write register)  CODEC:  (Dan) Route IN2L, IN3L to LPGA+
    W 0x36 0x20 (write register)  CODEC:  (Dan) IN2R to LPGA-
    W 0x37 0x88 (write register)  CODEC:  (Dan) Route IN1R, IN3R to RPGA+
    W 0x39 0x20 (write register)  CODEC:  Route IN1L to RPGA-
    W 0x3B 0x0C (write register)  CODEC:  Unmute Left MICPGA
    W 0x3C 0x0C (write register)  CODEC:  Unmute Right MICPGA
    W 0x00 0x00 (Write PAGE reg)
    W 0x51 0xC0 (write register)  CODEC:  Power up LADC/RADC
    W 0x52 0x00 (write register)  CODEC:  Unmute LADC/RADC
    W 0x0B 0x85 0x83 (write register)  CODEC:  Register 11 - NDAC = 5, MDAC = 3
    W 0x0D 0x00 0x80 (write register)  CODEC:  Register 13/14 - DOSR = 128
    W 0x3C 0x01 (write register)  CODEC:  (Dan) DAC signal processing bblock
    W 0x00 0x2C (Write PAGE reg)
    W 0x01 0x04 (write register)  CODEC:  Enable Adaptive filtering
    W 0x0C 0x7E 0x33 0xA8 0x00 0xC0 0xE6 0x2C 0x00 0x00 0x00 0x00 0x00 0x3E 0x33 0xA9 0x00 0x00 0x00 0x00 0x00 (write register)  CODEC:  Buf A Biquad A, Left Channel
    W 0x00 0x2D (Write PAGE reg)
    W 0x14 0x7E 0x33 0xA8 0x00 0xC0 0xE6 0x2C 0x00 0x00 0x00 0x00 0x00 0x3E 0x33 0xA9 0x00 0x00 0x00 0x00 0x00 (write register)  CODEC:  Buf A Biquad A, Right Channel
    W 0x00 0x2C (Write PAGE reg)
    W 0x48 0x7F 0xFF 0xFF 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 (write register)  CODEC:  Buf A Biquad D, Left Channel
    W 0x00 0x2D (Write PAGE reg)
    W 0x50 0x7F 0xFF 0xFF 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 (write register)  CODEC:  Buf A Biquad D, Right Channel
    W 0x00 0x3E (Write PAGE reg)
    W 0x0C 0x7E 0x33 0xA8 0x00 0xC0 0xE6 0x2C 0x00 0x00 0x00 0x00 0x00 0x3E 0x33 0xA9 0x00 0x00 0x00 0x00 0x00 (write register)  CODEC:  Buf B Biquad A, Left Channel
    W 0x00 0x3F (Write PAGE reg)
    W 0x14 0x7E 0x33 0xA8 0x00 0xC0 0xE6 0x2C 0x00 0x00 0x00 0x00 0x00 0x3E 0x33 0xA9 0x00 0x00 0x00 0x00 0x00 (write register)  CODEC:  Buf B Biquad A, Right Channel
    W 0x00 0x3E (Write PAGE reg)
    W 0x48 0x7F 0xFF 0xFF 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 (write register)  CODEC:   Buf B Biquad D, Left Channnel
    W 0x00 0x3F (Write PAGE reg)
    W 0x50 0x7F 0xFF 0xFF 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 (write register)  CODEC:  Buf B Biquad D,, Right Channel
    W 0x00 0x01 (Write PAGE reg)
    W 0x14 0x25 (write register)  CODEC:  De-pop
    W 0x0C 0x08 0x08 (write register)  CODEC:   LDAC/RDAC to HPL/HPR
    W 0x0E 0x08 0x08 (write register)  CODEC:  LDAC/RDAC to LOL/LOR
    W 0x09 0x3C (write register)  CODEC:  Power up HPL/HPR and LOL/LOR drivers
    W 0x0A 0x3B (write register)  CODEC:  (Dan) Set output common mode
    W 0x10 0x00 0x00 (write registter)  CODEC:  Unmute HPL/HPR driver, 0dB Gain
    W 0x12 0x00 0x00 (write register)  CODEC:  Unmute LOL/LORR driver, 0dB Gain
    W 0x00 0x00 (Write PAGE reg)
    W 0x41 0x00 0x00 (write register)  CODEC:  DAC => 0dB
    W 0x3F 0xD6 (write register)  CODEC:  Power up LDAC/RDAC
    W 0x40 0x00 (write register)  CODEC:  Unmute LDAC/RDACCODEC:  INIT DONE
    
    Reading Codec Page 0:
    ADDR  0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F
    0x0_ 00 00 60 00 00 11 07 00  38 00 00 85 83 00 80 02
    0x1_ 00 08 85 83 80 01 00 04  00 00 01 00 00 00 01 00
    0x2_ 00 00 00 00 44 EE 00 00  00 00 00 00 00 00 00 00
    0x3_ 00 00 00 00 18 14 05 08  05 00 00 00 01 01 00 D6
    0x4_ 00 00 00 00 6F 38 00 00  00 00 00 EE 10 D8 7E E3
    0x5_ 00 C0 00 00 00 00 00 00  7F 00 00 00 00 00 00 00
    0x6_ 7F 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
    Done reading page 00
    
    Reading Codec Page 1:
    ADDR  0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F
    0x0_ 01 08 F0 00 00 00 00 00  00 3C 3B 10 08 08 08 08
    0x1_ 00 00 00 00 25 00 00 00  00 00 00 00 00 00 00 00
    0x2_ 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
    0x3_ 00 00 00 00 28 00 20 88  00 20 00 0C 0C 00 03 F0
    0x4_ 00 00 00 00 00 00 00 32  00 00 00 00 00 00 00 00
    0x5_ 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
    0x6_ 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
    0x7_ 00 00 00 00 00 00 00 00  00 00 00 01 00 00 00 00
    Done reading page 1
    

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

    您打算如何处理录制或回放数据? 如果编解码器是主控模式、那么它将生成 WCLK 和 BCLK、但是如果它是受控模式、那么主机必须提供这些时钟。 即使编解码器正在生成时钟、主机也需要这些时钟、因此您必须连接到主机。 大多数处理器都支持 I2S 总线。

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

    我们打算简单地将音频通过 ADC 然后直接传递到 DAC、在编解码器中执行一些滤波/均衡操作。  

    这是使用编解码器的合法方式、还是数据必须通过 I2S 总线从外部传递到另一个器件?  换句话说、我们能否在编解码器内的 ADC 和 DAC 之间建立数据路径?

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

    我们的微控制器只是通过 I2C 总线(而不是 I2S)设置编解码器、完全不会涉及音频/数据路径。

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

    该器件不支持通过寄存器设置进行 ADC-DAC 回送。

    因此、您需要在外部执行它。

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

    这就是我们无法通过编解码器获得音频的原因!

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

    是的、是的。

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

    PAGE 0寄存器29位 D4的用途是什么?

    位 D4指示它将 ADC 输出路由到 DAC 输入、这正是我们需要执行的操作。

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

    我认为这也与 D5相关、其中编解码器为从模式、您需要从主机提供 wclk 和 BCLK。

    不管怎样、请尝试一下。

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

    是否有任何文档显示了下面显示的"数据接口"块的内容?  我在任何地方都找不到一个。

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

    数据接口只是主机/控制器的音频接口(音频串行接口)块、它基本上是不同音频格式的过程。

    如果您想了解更多有关该接口的信息、请观看下面的视频。

    https://training.ti.com/audio-serial-interface-formats

    此致。

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

    好的、谢谢。

    如果我们正确驱动 BCLK 和 WCLK 线路、我们是否可以通过编解码器传递如下音频?

    模拟输入-> ADC ->信号处理-> DAC ->模拟线路输出

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

    如果主机是主器件并为编解码器提供 wclk 和 BCLK、您应该能够做到这一点。