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.

[参考译文] TLV320AIC3256:输入过载

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/611117/tlv320aic3256-input-overload

部件号:TLV320AIC3256

你好

我们使用AIC3256USBEVM评估AIC3256小型DSP。 为此,我们使用TruePath IDE设计了一个简单的程序。 有一个框架AIC3256App4x2x,Dec4xIn,DSP_A_DSP_D互处理器和一个Int4xOut输出。 --> DSP

我们要在lineIn1上录制,并立即在Lineout上播放录制(仅用于测试)。

我们的问题是 ,大于100mV的小输入信号会导致输出饱和。

根据 参考maual:在共模和0.9V偏移的情况下,应该可以输入高达0.5Vss的信号。

系统设置代码的一部分:

----------------------------------

; ADC信道配置

----------------------------------

REG[1][51]= 0x40;已启用麦克风偏置,源= AVDD,1.25V

REG[1][52]= 0x40;将IN1L路由至具有10K输入阻抗的Left_P

REG[1][54]= 0x40;使用10K输入阻抗将CM1L路由至Left_M

REG[1][55]= 0x40;将IN1R路由到RIGHT _P,输入阻抗为10K

REG[1][57]= 0x40;使用10K输入阻抗将CM1R路由至Rright_M

REG[1][59]= 0x00;启用MicPGA_L增益控制,0dB

REG[1][60]= 0x00;启用MicPGA_R增益控制,0dB

REG[0][81]= 0xc0;打开LADC/RADC电源

REG[0][82]= 0x00;取消LADC/RADC静音

----------------------------------

; DAC通道配置

----------------------------------

REG[1][12]= 0x08;将LDAC路由到HPL

REG[1][13]= 0x08;将RDAC路由至HPR

REG[1][14]= 0x08;将LDAC路由到LOL

REG[1][15]= 0x08;将LDAC路由到Lor

REG[0][63]= 0xd4;使用软步进打开LDAC/RDAC

REG[1][125]= 0x12;GCHP模式,已在当前路由上启用偏移校正

REG[1][16]= 0x00;取消HPL驱动器静音,0dB增益

REG[1][17]= 0x00;取消HPR驱动程序静音,0dB增益

REG[1][18]= 0x00;将LOL驱动器取消静音,0dB增益

REG[1][19]= 0x00;取消Lor驱动器静音,0dB增益

REG[1][9]= 0x3c;启动HPL/HPR和LOL/Lor驱动程序

REG[0][64]= 0x00;取消LDAC/RDAC静音

感谢你的建议

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

    欢迎使用E2E,感谢您对我们产品的关注!

    您能否提供正在PurePath Studio上使用的整个流程文件? 这将有助于更好地处理这一问题。

    谢谢你。

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

    您好Luis Fernando

     

    感谢您的回答。

    您可以在附件中找到PurePath文件。

    我们的目标是使用Silicon Labs Gecko (M4)控制器的我们自己的平台。 在此应用程序中,我们使用MCLK作为48MHz的输入时钟。

    目前,我们使用PLL生成输入时钟。

    最初,我们只尝试向Lineout输出矩形信号。 这是成功的。

    然后我们尝试从线路输入进行录制并将其传输到线路输出。 在这种情况下,饱和发生了!??!

    这只是为了熟悉DSP。 在我们的应用中,我们需要一个特殊的滤波器,用于两个麦克风和具有 8000Hz数据速率和过采样的单声道输出。

     

    另一个问题是,我们不了解如何配置DSP,使其在单声道中输出8000Hz数据流时使用48K或96k进行过采样。

    第一个问题是以正确的顺序配置DSP,以便 使用例如48kHz和8000Hz的输出数据进行过采样。

    第二个是输出I2S 数据的范围。 据我所知,I2S数据必须基于0x8000 +/- 0x7FFF。

    每次切换至mono时,I2S上的结果数据流似乎基于0x4000…。”

    所有这些都有一个50mVss的输入信号。 如果我们尝试输入超过50mV的饱和度。

     

    我们完全感到困惑。

     

    此致

    哈拉尔德

    e2e.ti.com/.../3884.test.zip

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

    我们已经解决了测试应用程序的问题。

    首先是时钟生成的寄存器设置错误。

    我们的解决方案如下:

          %%IF (%%prop (SampleRate)== 8000)

          REG[ 0][5]= 0xB2      ;P=3,R=2

          REG[ 0][6]= 0x02      ;J=2

          REG[ 0][7]= 0x02      ;D=0x0230 (MSB)

          REG[ 0][8]= 0x30      ;D=0x0230 (LSB)

          REG[0][4]= 0x03      ;PLL_CLKIN = MCLK,CODEC _CLKIN = PLL_CLK,PLL打开

          REG[0][12]= 0x88      ;MDAC =8,0x80 =分配器已通电

          REG[ 0][13]= 0x02      ;DOSR = 640 = 0x280 (MSB)

          REG[0][14]= 0x80      ;DOSR = 640 = 0x280 (LSB)

          REG[0][18]= 0x82      ;NADC = 2,分配器通电

          REG[0][19]= 0xA8      ;mAdc = 40,分频器已通电

          REG[0][20]= 0x80      ;AOSR = 128

          REG[0][11]= 0x82      ;NDAC = 2,分配器已通电

          %%endif

    也许它会帮助其他开发人员…

    这是一种非常复杂的计算方法,因为两者之间存在相关性。

     

    接下来是我们在PurePath中使用的错误框架。

    现在我们使用 AIC3256App8x4x_1框架,输入信号就是我们所期望的。

    感谢您的帮助…