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.

[参考译文] TLV320AIC3104:在不使用 AGC 的情况下设置固定的 PGA 增益电平

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1273777/tlv320aic3104-setting-a-fixed-pga-gain-level-without-using-agc

器件型号:TLV320AIC3104

对于我的应用、我将对音频信号进行数字化处理、然后将其交给我公司的用于处理音频调节的自定义软件应用程序。

是否可以在 AGC 引擎不自动调节 PGA 增益的情况下设置静态量的 PGA 增益? 常数+3dB 或+20dB、会怎么样? 我不希望 AGC 不断地更改增益以达到某种目标输出电平。 如何直接控制 PGA 电平?

我已经对禁用 AGC 寄存器(寄存器26/29)以及将 PGA 电平从0dB 调整为+59dB (寄存器15/16)进行了实验。 但这对我录制的.WAV 文件的音量没有任何影响。 但是、如果我启用 AGC、则可以观察到.WAV 音量显著增加、并且可以看到在我以 audacity 模式查看.WAV 文件时、AGC 增益会按预期增加。 请注意、我正在使用 Linux 树中的 tlvaudioCODEC 驱动程序。

如何在不使用 AGC 的情况下手动应用固定 PGA 增益?

谢谢。
   -克里斯

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

    Chris、您好!

    是的、PGA 以分立式完全控制。 它应该与更改寄存器15/16一样简单。 您能否共享您的设置脚本、以便我了解是否存在冲突?

    此致、
    J·麦克弗森

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

    尊敬的 Jeff:  

    很抱歉这么晚才回复。 我不使用离散的设置脚本、而是使用 soc 内核中的 snd-linux-tlv320aic3x-tlv320aic3x 驱动程序。

    该驱动器 通过对 寄存器15/16进行写入来设置除法器控制以更改 PGA 增益。 不过、它将相同的值写入两个寄存器-似乎没有针对左右 PGA 增益的单独控制选项。

    此外、在写入寄存器15和16时、该驱动器将位7设置为高电平、从而启用静音。 因此在生成的.WAV 文件中不会录制音频-样本全为零。

    是否有其他实现内核驱动程序的方法来允许对这些寄存器进行单独控制?

       -克里斯

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

    Chris、您好!

    我懂了。 让我加入我们的驾驶员支持团队、解决您的调查结果。

    此致!
    J·麦克弗森  

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

    Chris、您好!

    抱歉延迟响应, 在 kcontrols 中,两个通道的音量确实配置在一起如下,但音量和开关控制是单独的,您可以设置开关控制来录制音频。

    原始代码:

        /*输入*/
        SoC_DOUBLE_R_TLV ("PGA 捕捉体积"、LADC_VOL、RADC_VOL、
                 0119、0、ADC_tlv)、
        SoC_DOUBLE_R ("PGA 捕捉开关"、LADC_VOL、RADC_VOL、7、0x01、 1)、

    我们可以对上面的代码进行一些小改动、 分别配置两个寄存器、如下所示:

    修改的代码:

        /*输入*/
        SoC_SINGLE_TLV ("PGA 捕获左音量"、LADC_VOL、
                 0119、0、ADC_tlv)、
        SoC_SINGLE_TLV ("PGA 捕获右音量"、RADC_VOL、
                 0119、0、ADC_tlv)、            
        SoC_SINGLE ("PGA 捕捉左开关"、LADC_VOL、7、0x01、1)、
        SoC_SINGLE ("PGA 捕捉右侧开关"、RADC_VOL、7、0x01、1)、
    请检查更改、并告诉我它是否适用于您的系统。
     
    谢谢