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.

[参考译文] TLV320AIC3120EVM-U:无法在 TLV320AIC3120音频编解码器中通过 I2S 建立 DIN 到 DOUT 数据传输

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1475582/tlv320aic3120evm-u-unable-to-establish-din-to-dout-data-transfer-over-i2s-in-tlv320aic3120-audio-codec

器件型号:TLV320AIC3120EVM-U
主题中讨论的其他器件:TLV320AIC3120

工具与软件:

您好!

我正在尝试通过 I2S 将 tlv320aic3120 Audiocodec 与 PSoC 微控制器集成到 I2S、从而使用 I2C 通信协议校准进行数据传输。 我们已经使用编解码器控制软件中提供的初始化脚本完成了校准、我们通过将00写入0x1B (页0 /寄存器27)寄存器来启用 I2S、通过将20写入0x1D (页0/寄存器29)寄存器来启用 DIN 至 DOUT 环回、并禁用 ADC 至 DAC 环回。 我们将向您提供音频文件数据、数据大小为59752字节、其中包括 PSoC 中的128kbps 至 Audiocodec 的 DIN (MCLK 为4.12MHz)、BLCK 为256kHz、MCLK 为8kHz、采样速率为8kHz)。 通道长度为16位。 并且我们已经校准了获得8kHz 采样率所需的所有寄存器。 我们校准的所有寄存器都能够通过 i2c 读回值。 但是、无论我们尝试通过 DIN 从 PSoC 发送到 AudioCodec 的59752字节数据、都无法通过 I2S DOUT 引脚回读。 我们要发送的数据是否有任何特定的数据格式? 通过配置 DIN 到 DOUT 环回、数据是否会自动返回到 DOUT 线路、我们就能够读取该数据? 请提供一些解决此问题的建议。

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

    尊敬的 Manikanta:

    我假设您是根据您设置的格式以 I2S 格式发送数据? 您能否共享完整的寄存器配置?

    谢谢!
    Jeff McPherson

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

    尊敬的 Jeff McPherson:

               是的、我将以 I2S 格式发送数据、并通过 I2S 校准寄存器。 我所用的配置如下所述。 请仔细查看。

    #------------------ 选择第0页
    W 30 00 00 00
    # s/w reset
    > 01
    # PLL_CLKIN = MCLK、CODEC_CLKIN = PLL_CLK
    W 30 04 03
    > D4
    > 20.
    > 00
    > 00
    #模式为 I2S、字长为16
    # DAC 配置
    W 30 1b 00
    W 30 1c 02
    # NDAC 已上电并设置为4
    W 30 0b E7.
    # MDAC 已通电并设置为4
    > 81.
    > 00
    > 01
    W 30 19 05
    > 80
    W 30 33 10.
    W 30 3C 04
    > 04.

    # ADC 配置
    W 30 12 E7.
    > 81.
    > 80
    # DAC =>通过引脚禁用音量控制
    W 30 74 00
    # DAC => DRC disable、th 和 hy
    W 30 44 00
    # DAC => 0 db gain left
    W 30 41 10
    #------------------ 选择第1页
    W 30 00 01
    #去 POP 音、上电= 800ms、步进时间= 4ms
    W 30 21 4e.
    # HPL
    W30 1f 86
    #连接到 HPL 的 LDAC
    W 30 23 40
    # HPL 取消静音并增益1dB
    W 30 28 0e.
    # HP 上没有衰减
    W 30 24 00
    W 30 25 00

    # MIC BIAS = AVDD
    W 30 2e 0A
    W 30 2f 80
    # MICPGA P = MIC 10k
    W 30 30 10
    # MICPGA M - CM 10k
    > 40.
    #------------------ 选择第0页
    W 30 00 00 00
    #选择 DAC DSP 模式11并启用自适应滤波器
    宽30 3c 0b
    W 30 00 08
    W 30 01 04
    W 30 00 00 00
    # POWERUP DAC (软步进禁用)
    宽30 3f d6
    #取消 DAC 静音
    > 04.
    #为 ADC channel 加电
    W 30 51 80
    #撤消 ADC 通道的静音
    > 00
    W 30 00 01
    #取消 D 类左侧静音
    宽302a 1c
    #启动 D 类驱动程序
    W 30 20 C6
    W 30 26 A3
    W 30 00 01
    W 30 20 06
    W 30 00 00 00
    W 30 1D 20
    我的心82.
    W 30 00 00 00

    谢谢!

    K. Manikanta Sai Srinivas

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

    尊敬的 Manikanta:

    您是否能够尝试在 ADC 配置之前启用环回? 该脚本运行的很晚、可能无法在其他所有已启动的功能下生效。

    此致、
    Jeff McPherson

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

    尊敬的 Manikanta:

    一项简单的检查是查看 DOUT 引脚上是否有任何数据切换、或者全部为0。 这有助于澄清它是回读问题还是编解码器根本不发送数据。

    DAC 是否通过扬声器输出正确播放数据?

    此致、
    Jeff McPherson

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

    尊敬的 Jeff McPherson:

    现在、我们能够通过 DOUT 引脚获取所需的 I2S 数据、并且馈送1kHz 正弦波文件、但无法通过禁用通过扬声器(HPOUT)所需的所有 ADC 到 DAC 环回和 DIN 到 DOUT 环回来监听确切的1kHz 音频正弦波。 我将把 WCLK 和 DOUT 的 I2S 的逻辑分析仪结果附在下面。 请查看它。

    我将遵循以下校准。 请向我建议侦听采样率为8000Hz 的1kHz 正弦波所需的正确时钟同步。   

    #------------------ 选择第0页
    W 30 00 00 00
    # s/w reset
    > 01
    W 30 04 05
    > 11.
    > 01
    > 00
    > 00
    W 30 1D 00

    # DAC 配置
    W 30 1b 00
    W 30 1c 02
    西30 0b 81.
    > 81.
    > 00
    > 20.
    W 30 19 05
    > 80
    W 30 33 10.
    W 30 3C 04
    > 04.

    # ADC 配置

    W 30 12 01
    > 01
    > 20.
    W 30 74 00

    W 30 44 00
    # DAC => 0 db gain left
    W 30 41 10
    #------------------ 选择第1页
    W 30 00 01
    #去 POP 音、上电= 800ms、步进时间= 4ms
    W 30 21 4e.
    # HPL
    W30 1f 86
    #连接到 HPL 的 LDAC
    W 30 23 40
    # HPL 取消静音并增益1dB
    W 30 28 0e.
    # HP 上没有衰减
    W 30 24 00
    W 30 25 00

    # MIC BIAS = AVDD
    W 30 2e 0A
    W 30 2f 80
    # MICPGA P = MIC 10k
    W 30 30 10
    # MICPGA M - CM 10k
    > 40.
    #------------------ 选择第0页
    W 30 00 00 00
    #选择 DAC DSP 模式11并启用自适应滤波器
    宽30 3c 0b
    W 30 00 08
    W 30 01 04
    W 30 00 00 00
    # POWERUP DAC (软步进禁用)
    宽30 3f d6
    #取消 DAC 静音
    > 04.
    #为 ADC channel 加电
    W 30 51 80
    #撤消 ADC 通道的静音
    > 00
    W 30 00 01
    #取消 D 类左侧静音
    宽302a 1c
    #启动 D 类驱动程序
    W 30 20 C6
    W 30 26 A3
    W 30 00 01
    W 30 20 06
    W 30 00 00 00
    W 30 1D 20
    我的心82.
    W 30 00 00 00

    谢谢!

    此致、

    K. Manikanta Sai Srinivas

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

    尊敬的 Manikanta:

    很高兴听到回送现在正常工作。

    要启用 HP 播放、下面有一个参考脚本、但我看到您正在为所有设备加电、因此这可能是时钟问题。

    #			--------------------------------------------------------------- page 0 is selected 
    w 30 00 00
    #			 s/w reset
    > 01
    #			 PLL_clkin = BCLK,codec_clkin = PLL_CLK
    w 30 04 07
    > 91
    > 20
    > 00
    > 00
    #			 mode is i2s,wordlength is 16
    w 30 1b 00
    #			 NDAC is powered up and set to 4
    w 30 0b 84
    #			 MDAC is powered up and set to 4
    > 84
    w 30 12 84
    > 84
    #			 DOSR = 128, DOSR(9:8) = 0
    > 00
    #			             DOSR(7:0) = 128
    > 80
    #			 DAC => volume control thru pin disable 
    w 30 74 00
    #			 DAC => drc disable, th and hy
    w 30 44 00
    #			 DAC => 0 db gain left
    w 30 41 00
    #			--------------------------------------------------------------- page 1 is selected
    w 30 00 01
    #			 De-pop, Power on = 800 ms, Step time = 4 ms
    w 30 21 4e
    #			 HPL
    w 30 1f c2
    #			 LDAC routed to HPL
    w 30 23 40
    #			 HPL unmute and gain 1db
    w 30 28 0e
    #			 No attenuation on HP
    w 30 24 00
    w 30 25 00
    
    #			 MIC BIAS = AVDD
    w 30 2e 0b
    #			 MICPGA P = MIC 10k
    w 30 30 40
    #			 MICPGA M - CM 10k
    > 40
    #			--------------------------------------------------------------- page 0 is selected
    w 30 00 00
    #			 select DAC DSP mode 11 & enable adaptive filter
    w 30 3c 0b
    w 30 00 08
    w 30 01 04
    w 30 00 00
    #			 POWERUP DAC (soft step disable)
    w 30 3f d6
    #			 UNMUTE DAC
    > 00
    #			 POWERUP ADC channel
    w 30 51 80
    #			 UNMUTE ADC channel
    > 00
    w 30 00 01
    #			 Unmute Class-D Left
    w 30 2a 1c
    #			 Power-up Class-D drivers
    w 30 20 c6

    在"Codec Control"(编解码器控制)中、您可以导航至"Digital Audio Processing"(数字音频处理)->"Internal Clock Gen Module"->"Advanced"(内部时钟生成模块)以查看所有时钟配置选项。 在主面板中、您可以输入确切的时钟需求(即8kHz 采样)、GUI 将根据您的设置需求自动计算适当的时钟设置。

    此致、
    Jeff McPherson

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

    尊敬的 Jeff McPherson:

    我已经根据此时钟分频器设置、使用4.12MHz 的 MCLK、BCLK 的256khz 和 WCLK 的8kHz 配置了8kHz 采样率。 根据我校准了时钟配置。 另外、我也无法通过 HPOUT 驱动器监听1kHz 正弦波。

    谢谢!

    此致、

    K. Manikanta Sai Srinivas.

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

    尊敬的 Manikanta:

    您能否通过 GUI 或 I2C 脚本共享完整更新的时钟设置?

    谢谢!
    Jeff McPherson

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

    尊敬的 Jeff McPherson:

    这些是我已经配置的时钟设置。 请查看它。

    #------------------ 选择第0页
    W 30 00 00 00
    # s/w reset
    > 01
    W 30 04 05
    > 11.
    > 01
    > 00
    > 00
    W 30 1D 00
    #模式为 I2S、字长为16
    # DAC 配置
    W 30 1b 00
    W 30 1c 02
    # NDAC 已上电并设置为4
    西30 0b 81.
    # MDAC 已通电并设置为4
    > 81.
    > 00
    > 20.
    W 30 19 05
    > 80
    W 30 33 10.
    W 30 3C 04
    > 04.

    # ADC 配置
    W 30 12 01
    > 01
    > 20.
    # DAC =>通过引脚禁用音量控制
    W 30 74 00
    # DAC => DRC disable、th 和 hy
    W 30 44 00
    # DAC => 0 db gain left
    W 30 41 10
    #------------------ 选择第1页
    W 30 00 01
    #去 POP 音、上电= 800ms、步进时间= 4ms
    W 30 21 4e.
    # HPL
    W30 1f 86
    #连接到 HPL 的 LDAC
    W 30 23 40
    # HPL 取消静音并增益1dB
    W 30 28 0e.
    # HP 上没有衰减
    W 30 24 00
    W 30 25 00

    # MIC BIAS = AVDD
    W 30 2e 0A
    W 30 2f 80
    # MICPGA P = MIC 10k
    W 30 30 10
    # MICPGA M - CM 10k
    > 40.
    #------------------ 选择第0页
    W 30 00 00 00
    #选择 DAC DSP 模式11并启用自适应滤波器
    宽30 3c 0b
    W 30 00 08
    W 30 01 04
    W 30 00 00 00
    # POWERUP DAC (软步进禁用)
    宽30 3f d6
    #取消 DAC 静音
    > 04.
    #为 ADC channel 加电
    W 30 51 80
    #撤消 ADC 通道的静音
    > 00
    W 30 00 01
    #取消 D 类左侧静音
    宽302a 1c
    #启动 D 类驱动程序
    W 30 20 C6
    W 30 26 A3
    W 30 00 01
    W 30 20 06
    W 30 00 00 00
    我的心82.
    W 30 00 00 00

    谢谢!

    此致、

    K. Manikanta Sai Srinivas.

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

    尊敬的 Manikanta:

    所以我尝试详细运行您的设置、发现您的设置没有解决方案。 我也手动进行了仔细检查、由于 BCLK 很小并且 MCLK 不够大、不足以是8kHz 的非整数倍、因此您将遇到限制。 很遗憾、您需要返工可用的时钟。 您可以仔细检查下面的约束条件。

    此致、
    Jeff McPherson

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

    尊敬的  Jeff McPherson:

    我们已更改了3072000Hz 的 MCLK、其倍频系数为384、采样率为8kHz、音频系统时钟为32768000Hz;通过相应的时钟分频器设置、即使我们禁用了 DIN 到 DOUT 环回和 ADC 到 DAC 环回、我们也能收听1kHz 频率音。 在这些配置设置下正常工作。 您能给我推荐一下如何启用 SPK_LP 和 SPK_LN 外部扬声器吗?

     

    谢谢!

    此致、

    K. Manikanta Sai Srinivas.

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

    尊敬的  Jeff McPherson:

    我分享的关于启用 SPK_LP 和 SPK_LN 的问题已得到解决。 这些是我已重新配置以启用外部扬声器线路(SPK_LP 和 SPK_LN)的寄存器。

    W 30 00 01

    W 30 23 40

    W 30 20 86

    W 30 26 80

    宽302a 1C

    由于此 TLV320AIC3120 Audiocodec 处于接收模式、我们会在后台收到一些噪声以及语音。 您能否建议与噪声消除和 TLV320AIC3120 Audiocodec 音量控制兼容的任何寄存器。

    谢谢!

    此致、

    K. Manikanta Sai Srinivas.

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

    尊敬的 Manikanta:

    您在背景中听到什么类型的噪声? 需要考虑的一点是、D 类扬声器输出为高电压开关输出、这使得麦克风输入易受噪声的影响。 我还建议使用尽可能小的麦克风增益。

    此致、
    Jeff McPherson

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

    尊敬的 Jeff McPherson:

    现在、我已经通过将86配置到页1/寄存器31 (0x1F)来配置 HPOUT、并且我要通过 mic1lp、将40配置到 页1/寄存器48 (0x30)来馈送1kHz 正弦波、但 HPOUT 的输出有些失真、我 下面附加了结果。 请进行查看、并给出建议从 HPOUT 获取正确的1kHz 正弦波。

    此致、
    Jeff McPherson

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

    尊敬的 Manikanta:

    我需要仔细检查您的 HPVDD 电源是否稳定、以及时钟频率是否根据您的时钟设置准确。

    预计会出现一些高频噪声。 可以在示波器上进行筛选。 干扰可能是测量连接松动、但也可能是电源干扰或时钟不稳定。

    此致、
    Jeff McPherson