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.

[参考译文] TLV320AIC3120:无输出、即使启用了 ADC 至 DAC 环路也是如此

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1310818/tlv320aic3120-no-output-even-with-adc-to-dac-loop-enabled

器件型号:TLV320AIC3120

我开始觉得 TLV320AIC3120功能中缺少一些基础知识。

我有一个定制的 PCB。  它在生活中的唯一用途(目前)是从麦克风获取输入并将其放大输出 D 类音频放大。
但是,我根本不能让它发出任何声音。

硬件设置:
连接到 MIC1_L_P 的单端麦克风(麦克风在 EVM 上工作)
时钟的 GPIO1 1.6MHz 输入
扬声器连接到 SPK_P/SPK_N

使用 SLAR163、我已经找到了这个 PLL 配置、这在 ADC+DAC 上为我提供了43.8KHz 的 Fs
J= 8、R=7、P=1、D=0
NDAC= 8、MDAC=2
NADC= 8、mAdc=2
DOSR= 128、AOSR=128

这是我的通用 I2C 初始化序列(全部由编解码器进行 ACK)、全部写入地址0x18 (7位)
(传输长度,寄存器,data1)
静态 const uint8_t Pinit[][3]={
{2、0x00、0x00}//页0
{2、0x01、0x01}、//软件复位
{2、0x33、0x04}、// GPIO1 =输入
{2、0x04、0x0B}、//时钟生成多路复用。 PLL_CLKIN=GPIO1、CODEC_CLKIN=PLL_CLK
{2、0x05、0x97}、// PLL P+R。 PLL 上电、P=1、R=7 (P=分频器、R=乘法器)
{2、0x06、0x08}、// PLL J = 8
{2、0x07、0x00}// PLL D 分数。 D 值 MSB = 0
{2、0x08、0x00}// PLL D 分数。 D 值 LSB = 0
{2、0x1B、0x00}、//模式为 I2S、字长为16
{2、0x0B、0x88}、// NDAC 上电并设置为8
{2、0x0C、0x82}、// MDAC 上电并设置为2
{2、0x12、0x84}、// NADC 已上电并设置为8
{2、0x13、0x84}、// mAdc 已上电并设置为2
{2、0x14、0x00}、// DOSR = 128、DOSR (9:8)= 0
{2、0x15、0x80}、// DOSR (7:0)= 128
{2、0x74、0x00}// DAC =>通过引脚禁用音量控制
{2、0x44、0x00}// DAC => DRC 禁用、th 和 hy
{2、0x41、0x00}、// DAC => 0 db 左增益
{2、0x00、0x01}//页1
{2、0x21、0x4E}、//去 POP 音、通电= 800ms、步进时间= 4ms
{2、0x1F、0xC2}、// HPL
{2、0x23、0x40}// LDAC 路由到 HPL
{2、0x28、0x0E}、// HPL 取消静音和增益1dB
{2、0x24、0x00}// HP 上无衰减
{ 2、0x25、0x00 }、
{2、0x2E、0x0B}、// MIC bias = AVDD
{2、0x30、0x40}// MICPGA P = MIC 10K
{2、0x31、0x40}// MICPGA N = CM 10K
{2、0x00、0x00}//页0
{2、0x3C、0x0B}、//选择 DAC DSP 模式11并启用自适应滤波器
{2、0x00、0x08}、
{ 2、0x01、0x04 },
{ 2、0x00、0x00 }、
{2、0x3F、0xD6}、//加电 DAC (软步进禁用)
{2、0x40、0x00}//使 DAC 取消静音
{2、0x51、0x80}、//为 ADC 通道加电
{2、0x52、0x00}//使 ADC 通道取消静音
{ 2、0x00、0x01 },
{2、0x2A、0x1C}、//取消 D 类左侧静音
{2、0x20、0xC6}、//为 D 类驱动程序加电
{0、0、0}、
};

之后、我运行该小片段以启用 ADC 至 DAC 环回。
静态 const uint8_t pTestInit[][3]={
{2、0x00、0x00}//第0页,以此来确定
{2、0x1d、0x1d}、// b4 =已启用 ADC 到 DAC 环回
{ 2、0x00、0x01 },
{2、0x2e、0x0a}、// MICBIAS = 2.5V
{2、0x26、0x4c}、
{0、0、0}、
};

现在、我希望能从器件中获得_some_声音。 但是、什么也没有。 对 SPK_P/_N 线进行作用域设置会显示一条非常平坦的线。 对麦克风输入完全没有反应。

我在这里缺少一些基本的东西吗?  比如、编解码器_need_ I2S 输入甚至可以运行吗?

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

    您好!

    查看寄存器0x1B、您正在将编解码器配置为从/目标模式;BCLK 和 WCLK 都是输入。 因此、您需要从主机向编解码器提供这些时钟。

    如果您配置为主/控制器模式、则输入时钟必须满足 PLL_CLKIN 约束条件、如数据表的第7.3.13.1节所示。

    您还可以使用以下产品文件夹中的 PLL 计算器来帮助您设置分频器。

    TLV320AIC3120数据表、产品信息和支持| TI.com

     我建议先使用44.1kHz 或48kHz 等通用采样率、而不是43.8KHz。

    此致。

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

    好的、我最后要做的就是将模拟麦克风信号作为输入、通过 DSP 中的几个滤波器进行运行、然后通过扬声器输出。  

    完全不需要任何 I2S。  只要我在 PLL_CLKIN 上提供一个时钟,编解码器就能做到这一点吗?

    (当前的 PLL 设置满足第7.3.13.1节中的限制。 我最终得到43.8KHz 的原因是因为我的输入信号改变的速率有点困难,并且不会高于1.6MHz)

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

    如果仅提供了 PLL_CLKIN、则将器件设置为主模式并相应地配置 PLL。 确保不违反任何的时钟频率;表7-36。