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.

[参考译文] TLV320DAC32:声音噪音/静态

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1203063/tlv320dac32-audible-hiss-static

器件型号:TLV320DAC32

我们在 音频通道中实现了 TLV320DAC32IRHBR。 每当我们要播放音频文件时、我们都会在播放音频之前听到明显的嘶嘶声。 在以前的设计中、我们使用了不同的编解码器、播放音频时没有任何嘶嘶声、因此我们想了解它是否与我们如何配置编解码器 或放大器接口有关。  

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

    Jim、您好!

    您可以共享您 正在使用的寄存器配置吗? 初始化脚本或初始化后的寄存器转储将是可以的。
    还请共享来自主机、MCLK、BCLK 和 WCLK 的输入时钟频率。

    此致、
    -Ivan Salazar
    应用工程师

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

    伊凡-

    感谢你的帮助。 我已经从代码中复制了我们的寄存器设置。 我们在初始化时仅配置一次编解码器。  在器件运行时、寄存器不会更改。 请告诉我、您是否希望我在我们结束时尝试任何操作

    此致、

    Scott Ellerthorpe

    主要固件工程师

    时钟频率
    MCLK 12MHz
    BCLK 20MHz

    Fsref = 48kHz

    寄存器设置(所有其他设置保留为默认值)

    tlv320_init_array1[0]= TLV320_REG0_PAGE_SEL;//自动递增的起始地址
    tlv320_init_array1[1]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_PAGE_SEL 0x00 //
    tlv320_init_array1[2]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_SW_RESET 0x01 //
    tlv320_init_array1[3]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_DAC_SAMP_RATE 0x02 //
    tlv320_init_array1[4]= 0x11;// regValue:0b00010000 0x10 regName:TLV320_REG0_PLL_PROG_A 0x03 //
    tlv320_init_array1[5]= 0x20;// regValue:0b00000100 0x04 regName:TLV320_REG0_PLL_PROG_B 0x04 //
    tlv320_init_array1[6]= 0x1E;// regValue:0b00011110 0x1E regName:TLV320_REG0_PLL_PROG_C 0x05 // 5
    tlv320_init_array1[7]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_PLL_PROG_D 0x06 // 6
    tlv320_init_array1[8]= 0x08;// regValue:0b00011000 0x18 regName:TLV320_REG0_DAC_datapath 0x07 //7
    tlv320_init_array1[9]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_AUDIO_SDI_A 0x08 // 8
    tlv320_init_array1[10]= 0x00;// regValue:0b00110000 0x30 regName:TLV320_REG0_AUDIO_SDI_B 0x09 // 9
    tlv320_init_array1[11]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_AUDIO_SDI_C 0x0A // 10
    tlv320_init_array1[12]= 0x01;// regValue:0b00000001 0x01 regName:TLV320_REG0_AUDIO_DAC_OVRFL 0x0B //11
    tlv320_init_array1[13]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_AUDIO_DAC_FILTER 0x0C // 12
    tlv320_init_array1[14]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_button_detect_A 0x0D //13
    tlv320_init_array1[15]= 0xC0;// regValue:0x11000000 0xC0 regName:TLV320_REG0_button_detect_B 0x0E //14
    tlv320_init_array1[16]= 0x00;// regValue:0x00000000 0x00 regName:保留0x0F //15
    tlv320_init_array1[17]= 0x00;// regValue:0x00000000 0x00 regName:保留0x10 //16
    tlv320_init_array1[18]= 0x00;// regValue:0x00000000 0x00 regName:保留0x11 //17
    tlv320_init_array1[19]= 0x00;// regValue:0x00000000 0x00 regName:保留0x12 // 18
    tlv320_init_array1[20]= 0x00;// regValue:0x00000000 0x00 regName:保留0x13 //19
    tlv320_init_array1[21]= 0x00;// regValue:0x00000000 0x00 regName:保留0x14 // 20
    tlv320_init_array1[22]= 0x00;// regValue:0x00000000 0x00 regName:保留0x15 /21
    tlv320_init_array1[23]= 0x00;// regValue:0x00000000 0x00 regName:保留0x16 /22
    tlv320_init_array1[24]= 0x00;// regValue:0x00000000 0x00 regName:保留0x17 /23
    tlv320_init_array1[25]= 0x00;// regValue:0x00000000 0x00 regName:保留0x18 // 24
    tlv320_init_array1[26]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_MICBIAS 0x19 /25
    tlv320_init_array1[27]= 0x00;// regValue:0x00000000 0x00 regName:保留0x1A /26
    tlv320_init_array1[28]= 0x00;// regValue:0x00000000 0x00 regName:保留0x1B /27
    tlv320_init_array1[29]= 0x00;// regValue:0x00000000 0x00 regName:保留0x1C /28
    tlv320_init_array1[30]= 0x00;// regValue:0x00000000 0x00 regName:保留0x1D /29
    tlv320_init_array1[31]= 0x00;// regValue:0x00000000 0x00 regName:保留0x1E // 30
    tlv320_init_array1[32]= 0x00;// regValue:0x00000000 0x00 regName:保留0x1F // 31
    tlv320_init_array1[33]= 0x00;// regValue:0x00000000 0x00 regName:保留0x20 //32
    tlv320_init_array1[34]= 0x00;// regValue:0x00000000 0x00 regName:保留0x21 // 33
    tlv320_init_array1[35]= 0x00;// regValue:0x00000000 0x00 regName:保留0x22 //34
    tlv320_init_array1[36]= 0x00;// regValue:0x00000000 0x00 regName:保留0x23 //35
    tlv320_init_array1[37]= 0x00;// regValue:0x00000000 0x00 regName:保留0x24 //36
    tlv320_init_array1[38]= 0x80;// regValue:0b10000000 0x80 regName:TLV320_REG0_DAC_OUTPUT DRV 0x25 //37
    tlv320_init_array1[39]= 0x02;// regValue:0b00000010 0x02 regName:TLV320_REG0_HIPWR_OUTPUT DRV 0x26 // 38

    tlv320_init_array2[0]= TLV320_REG0_HIPWR_output;//自动递增的起始地址
    tlv320_init_array2[1]= 0x80;// regValue:0b00000000 0x00 regName:TLV320_REG0_HIPWR_output 0x28 // 40
    tlv320_init_array2[2]= 0x80;// regValue:0b10000000 0x80 regName:TLV320_REG0_DAC_OUTPUT SW 0x29 //41
    tlv320_init_array2[3]= 0x34;// regValue:0b00110100 0x34 regName:TLV320_REG0_OUTPUT DRV_POP 0x2A // 42
    tlv320_init_array2[4]= 0x00;// regValue:0b00000000 0x00 regName:TLV320_REG0_VOL_DACL 0x2B //43卷
    tlv320_init_array2[5]= 0xFF;// regValue:0b11111111 0xFF regName:TLV320_REG0_VOL_DACR 0x2C // 44

    tlv320_init_array3[0]= TLV320_REG0_VOL_DACL_HPLOUT;//单次写入的起始地址
    tlv320_init_array3[1]= 0x80;// regValue:0b10000000 0x80 regName:TLV320_REG0_VOL_DACL_HPLOT 0x2F //47

    tlv320_init_array4[0]= TLV320_REG0_HPLOT_OUT_LEVEL;//单次写入的起始地址
    tlv320_init_array4[1]= 0x2D;// regValue:0b00101101 0x2D regName:TLV320_REG0_HPLOT_OUT_LEVEL 0x33 //51卷

    tlv320_init_array6[0]= TLV320_REG0_additional_B;//自动递增的起始地址
    tlv320_init_array6[1]= 0x01;// regValue:0b00000001 0x01 regName:TLV320_REG0_Additional _B 0x65 //101
    tlv320_init_array6[2]= 0x08;// regValue:0b10000x88 regName:TLV320_REG0_clock_GEN 0x66 // 102

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

    您好、Scott、

    我将检查此问题、 并在几天内向您提供更多意见。

    此致、
    -Ivan Salazar
    应用工程师

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

    伊凡-

    您是否能够测试我们的配置?

    此致、

    Scott Ellerthorpe

    主要固件工程师

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

    您好、Scott、

    我已经失去了这一条的轨迹、还没有通过测试、我将在明天结束时添加一些评论。

    此致、
    -Ivan Salazar
    应用工程师

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

    您好、Scott、

    我一直在处理这个旧的评估模块的一些问题、但现在它已经开始工作了。 我使用了您的脚本并获得了输出信号、但是左通道的振幅更高。

    但是、该测试使用主机的一些默认 I2S-48kHz 配置(Audio Precision APX 500)、然后我注意到 您提到了 MCLK 12MHz
    BCLK 20MHz。 您能否仔细检查这些是否是正确的时钟频率? 通常、至少 BCLK 是 WCLK (48kHz)的倍数、因为它由 BCLK = FS *(通道数)*(每通道位)给出。

    关于通道之间振幅的差异、我将在全面分析您的寄存器配置脚本后提供进一步的注释。

    此致、
    -Ivan Salazar
    应用工程师

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

    我与硬件工程师进行了交谈。 MCLK = 12、289、966 Hz、WCLK = 48 kHz、BLCK = 3072 kHz (32位数据)。 对这种混乱表示歉意。 我们仅使用左通道。

    此致、

    Scott Ellerthorpe

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

    感谢 Scott 的更新、

    伊凡下周不在办公室、因此团队中的另一位成员将为您提供支持、直到他必要时返回。

    谢谢、

    Jeff McPherson

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

    您好、Scott、

    上次沟通已经有一段时间了、您能告诉我您的一方是否有任何更新吗? 您的测试中是否仍然可以感知到嘶嘶声噪声? 您只在一个器件上进行测试还是在多个器件上进行测试?

    根据您的最后一条评论和我的上一条测试、您的配置似乎应该正常。 它显示您使用的时钟设置与 APx500相同、我使用了您的脚本、并且根据您的描述、我只获得左通道信号的事实也是可以的。

    您能否确认从设备初始化到播放音频期间是否始终存在时钟? 供参考通过 I2C 初始化 DAC 后、不应中断时钟。

    此致、
    -Ivan Salazar
    应用工程师