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:miniDSP#39未运行?

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/960140/tlv320aic3256-minidsp-s-not-running

器件型号:TLV320AIC3256

您好!

我们正在尝试让 AIC3256在新设计中运行、并出现了 miniDSP 似乎没有运行的问题。

通过 I2C 读取/写入以加载编解码器似乎工作正常。

VSYS、IOVDD = 3.01v、DVDD、AVDD、HPVDD 和 DVDD_CP 均为1.86v、 MCLK = 12MHz。

这是 PPS 生成的控制寄存器(在 EVM-U 上按预期工作):

{0、0x00}、
{1、0x01}、//# reg[0][1]= 0x01;通过软件复位初始化器件
{254、0x0A}、
{0、0x01}、
{124、0x06}、//# reg[1][124]= 0x06;电荷泵1x 电流、333kHz 时钟(8MHz/(6*4))
{1、0x0A}、//# reg[1][1]= 0x0a;禁用弱 AVDD 至 DVDD 连接、使用 OSC 作为 CP
{2、0x00}、//# reg[1][2]= 0x00;启用主模拟功率控制
{71、0x32}、//# reg[1][71]= 0x32;将输入上电时间设置为3.1ms
{123、0x05}、//# reg[1][123]= 0x05;强制 REF 充电时间为40ms
{255、0x00}、
{255、0x01}、
{0、0x00}、
{60、0x00}、//# reg[0][60]= 0x00;使用 miniDSP_D 进行信号处理
{61、0x00}、//# reg[0][61]= 0x00;使用 miniDSP_A 进行信号处理
{17、0x08}、//# reg[0][17]= 0x08;8x 内插
{23、0x04}、//# reg[0][23]= 0x04;4倍抽取
{15、0x03}、
{16、0x88}、
{21、0x03}、
{22、0x88}、
{0、0x08}、
{1、0x04}、//# reg[8][1]= 0x04;ADC 的自适应模式
{0、0x2C}、
{1、0x04}、//# reg[44][1]= 0x04;DAC 的自适应模式
{0、0x00}、
{5、0x91}、//# reg[0][5]= 0x91;P=1、R=1、J=8
{6、0x08}、//# reg[0][6]= 0x08;P=1、R=1、J=8
{7、0x00}、//# reg[0][7]= 0x00;D=0000 (MSB)
{8、0x00}、//# reg[0][8]= 0x00;D=0000 (LSB)
{4、0x03}、//# reg[0][4]= 0x03;PLL_CLKIN = MCLK、CODE_CLKIN = PLL_CLK、PLL 打开
{254、0x0a}、
{12、0x87}、//# reg[0][12]= 0x88;MDAC = 7、分频器加电
{13、0x00}、//# reg[0][13]= 0x00;DOSR = 128 (MSB)
{14、0x80}、//# reg[0][14]= 0x80;DOSR = 128 (LSB)
{18、0x02}、//# reg[0][18]= 0x02;NADC = 2、分频器断电
{19、0x87}、//# reg[0][19]= 0x88;mAdc = 7、分频器通电
{20、0x80}、//# reg[0][20]= 0x80;AOSR = 128
{11、0x82}、//# reg[0][11]= 0x82;NDAC = 2、分压器通电
{0、0x01}、
{51、0x40}、//# reg[1][51]= 0x40;麦克风偏置被启用、Source = AVDD、1.25V
{52、0x40}、//# reg[1][52]= 0x40;将 IN1L 路由到具有10K 输入阻抗的 LEFT_P
{54、0x40}、//# reg[1][54]= 0x40;将 CM1L 路由到 LEFT_M、输入阻抗为10K
{55、0x40}、//# reg[1][55]= 0x40;将 IN1R 路由到 Rright_P、输入阻抗为10K
{57、0x40}、//# reg[1][57]= 0x40;将 CM1R 路由到 Rright_M、输入阻抗为10K
{59、0x00}、//# reg[1][59]= 0x00;启用 MICPGA_L 增益控制、0dB
{60、0x00}、//# reg[1][60]= 0x00;启用 MICPGA_R 增益控制、0dB
{0、0x00}、
{81、0xC0}、//# reg[0][81]= 0xc0;为 LADC/RADC 加电
{82、0x00}、//# reg[0][82]= 0x00;取消 LADC/RADC 静音
{0、0x01}、
{12、0x08}、//# reg[1][12]= 0x08;将 LDAC 路由到 HPL
{13、0x08}、//# reg[1][13]= 0x08;将 RDAC 路由到 HPR
{14、0x08}、//# reg[1][14]= 0x08;将 LDAC 路由到 LOL
{15、0x08}、//# reg[1][15]= 0x08;将 LDAC 路由到 LOR
{0、0x00}、
{63、0xD4}、//# reg[0][63]= 0xd4;加电 LDAC/RDAC、带软步进
{0、0x01}、
{125、0x12}、//# reg[1][125]= 0x12;GCHP 模式、偏移校正在当前路由上启用
{16、0x00}、//# reg[1][16]= 0x00;取消 HPL 驱动器静音、0dB 增益
{17、0x00}、//# reg[1][17]= 0x00;取消 HPR 驱动器静音、0dB 增益
{18、0x00}、//# reg[1][18]= 0x00;取消 LOL 驱动器静音、0dB 增益
{19、0x00}、//# reg[1][19]= 0x00;取消 Lor 驱动器静音、0dB 增益
{9、0x3C}、//# reg[1][9]= 0x3c;为 HPL/HPR 和 LOL/Lor 驱动器加电
{0、0x00}、
{64、0x00}、//# reg[0][64]= 0x00;取消 LDAC/RDAC 静音
{26、0x82}、//# reg[0][26]= 0x82;CDIV_CLK = MCLK、CLKOUT M 分频器= 2
{52、0x10}//# reg[0][52]= 0x10;MPF5 = CLK_OUT

我已经在 MPF5上添加了 MCLK/2输出功能、它可以正常工作。  

加载的 miniDSP 代码只是 HP 输出的音调发生器。  我已经检查了多次、并将其设置为在负载、频率1k、振幅0.9下运行。

我在强制参考后尝试添加延迟、这没有任何影响。

我还尝试过在 PPS 中对非 EVM-U 板进行电源初始化、这一点也没有什么不同。

编解码器的所有电压看起来都很好。  是否有任何关于要查找的内容的建议?

提前感谢。

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

    尊敬的 Lance:

    我希望您已经在 EVM 板上测试了该流程、并确保其正常工作。 如果是、则问题可能与时钟有关。

    您电路板上的时钟方案是什么? 是 MCLK 还是 BCLK? 必须相应地推导时钟树。

    此致。

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

    您好!

    感谢您的回复。

    是的、该流程在 EVM-U 上正常工作   

    我返回并更改了时钟树、以匹配12MHz MCLK 和48K FS 的表2-23中的内容。  耳机仍然没有。  现在的时钟设置如下:

    {0、0x00}、
    {5、0x91}、//# reg[0][5]= 0x91;P=1、R=1、J=7
    {6、0x07}、//# reg[0][6]= 0x07;P=1、R=1、J=7
    {7、0x06}、//# reg[0][7]= 0x06;D=1680 (MSB)
    {8、0x90}、//# reg[0][8]= 0x90;D=1680 (LSB)
    {4、0x03}、//# reg[0][4]= 0x03;PLL_CLKIN = MCLK、CODE_CLKIN = PLL_CLK、PLL 打开
    {254、0x0a}、
    {11、0x82}、//# reg[0][11]= 0x82;NDAC = 2、分压器通电
    {12、0x87}、//# reg[0][12]= 0x88;MDAC = 7、分频器加电
    {13、0x00}、//# reg[0][13]= 0x00;DOSR = 128 (MSB)
    {14、0x80}、//# reg[0][14]= 0x80;DOSR = 128 (LSB)
    {18、0x87}、//# reg[0][18]= 0x02;NADC = 7、分频器加电
    {19、0x82}、//# reg[0][19]= 0x88;mAdc = 2、分频器通电
    {20、0x80}、//# reg[0][20]= 0x80;AOSR = 128
    {254、0x0a}、

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

    尊敬的 Lance:

    我看到、即使您没有使用 ADC、您也在为 ADC 供电。 在这种情况下、我建议您使用稍作修改的时钟树版本、如下所示。 蓝色电池已发生变化、以确保连接到 DAC 和 ADC 的 miniDSP 以相同的速率运行。

    调试时需要检查的其他一些事项-

    • 为了检查 DAC 和 ADC 是否正在运行、您可以读取标志寄存器(第0页、寄存器36-38)。
    • 第0页、寄存器26具有将 DAC 时钟路由到 MFP5的选项、可用于检查时钟是否正常工作。

    我希望这些为扭转这种情况铺平了道路。 请告诉我您是否仍然卡住。

    此致。

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

    尊敬的 Diljith:

    我已经尝试了您对交换 NADC 和 mAdc 的建议、并且我也在 MPF5上输出 DAC_MOD_CLK。  它看起来像预期的6.144Mhz。

    标志寄存器读取为:

    [0][36]= 0x44、左侧和右侧 ADC 上电、应用增益!=已编程增益、不饱和。

    [0][37]= 0xee、RDAC、LDAC、HPR、HPL、 LOR、LOL 全部通电

    [0][38]= 0x00、应用的增益!=编程的增益

    仍然没有输出。

    我们非常感谢您在这方面的帮助。

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

    尊敬的 Lance:

    1.您是否有机会在关闭音调发生器的情况下创建头文件?

    2.您能否确认已针对 {255、0x00}和{255、0x01}种情况对 miniDSP 程序和系数寄存器进行了编程?

    此致。

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

    您好!

    根据 PPS、音调发生器系数位于状态寄存器的[44][28-31]。  在生成的文件中查看该值、值为0x00010000 =运行。  当我从编解码器读取此位置时、我将读取0x00010000。

    我还尝试从[152][8]开始读取 DAC 指令、读取的值与生成的文件中的值相匹配。

    因此、它看起来是设置为运行的、并且在加载过程中进行编程。

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

    请注意、我们还可以确认、当我们将 IN1L+R 路由到 HP 输出时、这确实起作用、但似乎无论我们做什么、我们都无法获得任何流程来使用 miniDSP。  我们过去使用过 AIC3262和 AIC3254、从未遇到过这样的问题。

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

    您能否检查器件的 BCLK 和 WCLK 输入? 它们是否具有正确的频率、它们是否看起来很好?

    此致。

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

    尊敬的 Diljith:

    在我们的设置中、我们需要编解码器为 I2S 接口生成 WCLK 和 BCLK。  由于我们尚未担心在电路板上测试该接口、因此我们尚未启用它们。  一旦我启用了 WCLK 和 BCLK 的生成、一切都在运行。

    非常感谢您的帮助和指导。  非常感谢。