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.

[参考译文] TLV320DAC3101:持续噪声与实际噪声

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/725391/tlv320dac3101-continous-noise-with-actual-sound

器件型号:TLV320DAC3101

您好!

我们在应用中使用 TLV320DAC3101实现音频输出。 当我们启动音频时、我们会在实际声音中不断发出噪音。 我们已验证声音
声音数据非常好。

我们的配置是 MCLK:2.088MHz,DAC FS = 8kHz,16位数据,采用 I2S 协议。

配置脚本如下所示、您能否检查并验证配置是否完美或配置中是否有任何错误。

/*第0页*/
DAC_Register_Write (0x00、0x00);

/*SW 复位位位清零*/
DAC_Register_Write (0x01、0x01);

/*CLK Gen MUX 寄存器*/
DAC_Register_Write (0x04、0x03);

/* J = 10,D = 0,R = 3,P = 1*/
DAC_Register_Write (0x06、0x0A);
DAC_Register_Write (0x07、0x00);
DAC_Register_Write (0x08、0x00);
DAC_Register_Write (0x05、0x93);

/*NDAC =5*/
/*NDAC VAL*/
DAC_Register_Write (0x0B、0x85);

/*MDAC =3*/
/*MDAC VAL*/
DAC_Register_Write (0x0C、0x83);

/*DSOR =522*/
/*DSOR*/
DAC_Register_Write (0x0D、0x02);
DAC_Register_Write (0x0E、0x0A);

/*使用16位数据设置 I2S 模式*/
DAC_Register_Write (0x1B、0x00);

/*设置数据偏移0*/
DAC_Register_Write (0x1C、0x00);

/*设置处理块 PRB P11 */
DAC_Register_Write (0x3C、0x0B);

/*设置启用 Adaptikve 过滤的第8页*/
DAC_Register_Write (0x00、0x08);

/*已启用 Adaptikve 过滤*/
DAC_Register_Write (0x01、0x04);

/*将第0页设置为卷初始化*/
DAC_Register_Write (0x00、0x00);

/*音量控制引脚禁用*/
DAC_Register_Write (0x74、0x00);

/*设置第1页用于 HP 和 SPK 初始化*/
DAC_Register_Write (0x00、0x01);

/*将共模电压设置为1.35V */
DAC_Register_Write (0x1F、0x04);

/*de-pop、通电= 800ms、步进时间= 4ms*/
DAC_Register_Write (0x21、0x4E);

/*设置 DACL->路由到左通道,DACR->路由到右通道*/
DAC_Register_Write (0x23、0x44);

/*设置耳机增益*/
DAC_Register_Write (0x28、0x06);
DAC_Register_Write (0x29、0x06);


/*设置扬声器增益*/
DAC_Register_Write (0x2A、0x14);
DAC_Register_Write (0x2B、0x14);


/*为 HPL 和 HPR 加电*/
DAC_Register_Write (0x1F、0xC6);

/*为 MIC BIAS 加电*/
DAC_Register_Write (0x2E、0x0B);


/*上电扬声器*/
DAC_Register_Write (0x20、0xC6);


/*设置耳机音量-9dB */
DAC_Register_Write (0x24、0x92);
DAC_Register_Write (0x25、0x92);

延迟(1000);

/*设置扬声器音量-9 dB */
DAC_Register_Write (0x26、0x92);
DAC_Register_Write (0x27、0x92);


/*设置第0页 DAC 加电*/
DAC_Register_Write (0x00、0x00);


/*为左右通道的 DAC 加电*/
DAC_Register_Write (0x3F、0xD4);

/*将左增益设置为-22dB */
DAC_Register_Write (0x41、0xD4);

/*将右增益设置为-22dB */
DAC_Register_Write (0x42、0xD4);

/*取消 DAC*/的数字音量静音
DAC_Register_Write (0x40、0x00);

此致

Rutvik

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

    负责该设备的人员不在办公室、因此他将在明天用更多信息作出响应。

    此致
    Jos é Luis Figueroa
    音频应用工程师
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rutvik、

    这很可能是时钟设置寄存器问题。 我将仔细检查脚本的每一行、但乍一看、为了获得最佳性能、我建议设置 DOSR = 128 (这将修改其余的时钟设置)。
    我将在今天稍后的时间提供有关 init 脚本的更多注释。

    此致、
    -Ivan Salazar
    应用工程师-低功耗音频和传动器
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Rutvik、

    我建议使用以下时钟设置、如果可能、请尝试使用、并告知我们性能是否得到提高:
    PLL_P = 3
    PLL_R = 4
    PLL_J = 32
    PLL_D = 0
    NDAC = 3.
    MDAC = 29
    DOSR = 128

    此致、
    -Ivan Salazar
    应用工程师-低功耗音频和传动器
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Ivan、

    我们已经尝试过您的设置、它可以改善声音、但噪音仍然存在。 您是否在上述脚本中有任何其他建议。

    我们对配置的要求是:8kHz 16位数据、BCLK- 256KHz、MCLK - 2.088MHz。

    我们还尝试了 DAC 中的 BCLK 配置、但仍然存在噪声。

    对于 BCLK、我们更改了脚本中的以下内容。 它是完美的吗? 在中、MCLK 作为 CLK 的声音行为与在中的 BCLK 作为 CLK 的声音行为相同。

    /*CLK Gen 使用 BCLK*/
    DAC_Register_Write (0x04、0x01);

    /*PLL 关闭*/
    DAC_Register_Write (0x05、0x00);

    /* NDAC = 1 MDAC = 1 DSOR = 32 */
    DAC_Register_Write (0x0B、0x81);
    DAC_Register_Write (0x0C、0x81);

    DAC_Register_Write (0x0D、0x00);
    DAC_Register_Write (0x0E、0x20);


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

    您是否有 I2S 信号的捕捉? 我想知道您是否需要在 BCLK 上添加偏移、甚至反转 BCLK。 这些是我会有所不同的几个方面、看看是否有任何改进。

    关于 BCLK 作为 PLL 的输入、我不建议这样做、因为 BCLK 低于512kHz、这是 PLL 的最小输入频率。
    我将仔细检查您在原始帖子上共享的设备配置中可能会影响音频的其他因素。

    此致、
    -Ivan Salazar
    应用工程师-低功耗音频和传动器
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Ivan、

    请找到的 I2S 波形

    (1) WS (8kHz)与 BCLK (256KHZ)间的关系

    (2) WS (8kHz)与数据(16位)间的关系

    此致、

    Khodidas

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

    我从上面的捕获中得到了一个问题。 数据的 MSB 在 BCLK 的第一个上升沿还是在第二个上升沿有效?
    如果数据在 BCLK 的第二个上升沿有效、则为 I2S 格式、但如果数据在 BCLK 的第一个上升沿有效、则为左对齐格式。

    此致、
    -Ivan Salazar
    应用工程师-低功耗音频和传动器
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Ivan、

    我们已验证我们的数据、我们已纠正数据中存在问题。 现在声音清晰。 但我们会收到另一个噪声。 我添加了两个音频录制文件,如果您听到您会知道我们会听到什么噪音。 一种是传输声音、另一种是没有声音。 即使我们关闭主机 控制器的 I2S 数据发送和 MCLK、也会发出这种声音。  

    您能不能在此分享您的观点。 这种类型的声音为什么会出现在背景中。

    此致

    Rutvik Fadiae2e.ti.com/.../DAC_5F00_TEST_5F00_WITH_5F00_NOSOUND.aace2e.ti.com/.../DAC_5F00_TEST_5F00_WITH_5F00_SOUND.aac

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

    您使用的配置是否与以前相同? 是否可以发送初始化脚本或寄存器转储进行确认?
    此噪声是否像背景中的白噪声?
    如果您在 TLV320DAC3101上禁用 I2S 接口、是否仍然存在噪声?

    此致、
    -Ivan Salazar
    应用工程师-低功耗音频和传动器
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Ivan、

    没有,我们已经修改了配置,因为现在我们的 MCLK 是精确的2.048MHz。 因此、我们已根据该寄存器值进行了更改。 其余部分是相同的。 我在这里附加了新的 init 脚本。

    第二个问题是、声音就像背景中的白噪声。 只要我们从主机控制器启动 I2S 通信、就会持续发出这种声音。 如果我们从主机控制器禁用 I2S 和 MCLK,则此声音也不会停止。

    对于第三个问题、我们没有禁用 DAC 侧的 I2S 接口。 我们仅关闭它并关闭主机控制器侧。

    Init 脚本为:

    /*第0页*/
    DAC_Register_Write (0x00、0x00);

    /*SW 复位位位清零*/
    DAC_Register_Write (0x01、0x01);

    /*PLL CLKIN*/
    DAC_Register_Write (0x04、0x03);

    /*设置 PLL 掉电*/
    /* J = 33、D = 0、P = 3、R = 4 */
    DAC_Register_Write (0x06、0x21);
    DAC_Register_Write (0x07、0x00);
    DAC_Register_Write (0x08、0x00);
    /*设置 PLL 上电*/
    DAC_Register_Write (0x05、0xD4);


    /*SET NDAC =4*/
    DAC_Register_Write (0x0B、0x84);

    /*设置 MDAC =22*/
    DAC_Register_Write (0x0C、0x96);

    /*设置 DOSR ->128加电值1*/
    DAC_Register_Write (0x0D、0x00);
    DAC_Register_Write (0x0E、0x80);


    /*使用16位数据设置 I2S 模式*/
    DAC_Register_Write (0x1B、0x00);

    /*使用16位数据设置 I2S 模式*/
    DAC_Register_Write (0x1C、0x00);

    /*设置处理块 PRB P11 */
    DAC_Register_Write (0x3C、0x0B);

    /*设置启用 Adaptikve 过滤的第8页*/
    DAC_Register_Write (0x00、0x08);

    /*已启用 Adaptikve 过滤*/
    DAC_Register_Write (0x01、0x04);

    /*将第0页设置为卷初始化*/
    DAC_Register_Write (PG_CTRL0、0x00);

    /*音量控制引脚禁用*/
    DAC_Register_Write (0x74、0x00);

    /*设置第1页用于 HP 和 SPK 初始化*/
    DAC_Register_Write (0x00、0x01);


    /*将共模电压设置为1.35V */
    DAC_Register_Write (0x1F、0x04);

    /*de-pop、通电= 800ms、步进时间= 4ms*/
    DAC_Register_Write (0x21、0x4E);

    /*设置 DACL->路由到左通道,DACR->路由到右通道*/
    DAC_Register_Write (0x23、0x44);


    /*设置耳机增益*/
    DAC_Register_Write (0x28、0x06);
    DAC_Register_Write (0x29、0x06);



    /*设置扬声器增益*/
    DAC_Register_Write (0x2A、0x1C);
    DAC_Register_Write (0x2B、0x1C);



    /*为 HPL 和 HPR 加电*/
    DAC_Register_Write (0x1F、0xC6);



    /*上电扬声器*/
    DAC_Register_Write (0x20、0xC6);



    /*设置耳机音量*/
    DAC_Register_Write (0x24、0x83);
    DAC_Register_Write (0x25、0x83);



    /*设置扬声器音量*/
    DAC_Register_Write (0x26、0x80);
    DAC_Register_Write (0x27、0x80);


    /*等待时间*/
    延迟(1000);

    /*设置第0页 DAC 加电*/
    DAC_Register_Write (0x00、0x00);


    /*为左右通道的 DAC 加电*/
    DAC_Register_Write (0x3F、0xD4);

    /*设置左增益*/
    DAC_Register_Write (0x41、0x00);

    /*将右增益设置为*/
    DAC_Register_Write (0x42、0x00);

    /*取消 DAC*/的数字音量静音
    DAC_Register_Write (0x40、0x00);


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

    由于 MCLK 为2.048MHz、这已经是8kHz 的倍数、因此您可以通过不使用 PLL 来使用简单的时钟设置。
    我将检查您共享的脚本的其余部分、但与此同时、您是否可以尝试以下时钟设置?:

    /*MCLK 作为 CODE_CLKIN*/的输入
    DAC_Register_Write (0x04、0x00);

    /*设置 PLL 掉电*/
    DAC_Register_Write (0x05、0x00);


    /*设置 NDAC = 1*/
    DAC_Register_Write (0x0B、0x81);

    /*设置 MDAC =2*/
    DAC_Register_Write (0x0C、0x82);

    /*设置 DOSR ->128加电值1*/
    DAC_Register_Write (0x0D、0x00);
    DAC_Register_Write (0x0E、0x80);

    此致、
    -Ivan Salazar
    应用工程师-低功耗音频和传动器
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、Ivan

    通过不使用 PLL 消除白噪声问题。 现在、只有我们在声音的某个点有一些微小的噪声。 我们已设置最大值
    模拟音量和最大增益是否会造成任何问题。 ?

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

    这是什么类型的噪声? 也许当您使用最大音量和增益时、输出会被削波、因此当音频信号在最大可用输出电压下饱和时、您会听到一些失真。
    如果您有一个 RC 滤波器、您可以检查输出信号并寻找饱和、以查看它是否与上述噪声同时发生。

    此致、
    -Ivan Salazar
    应用工程师-低功耗音频和传动器