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.

[参考译文] TAS5717:未看到扬声器输出

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1160354/tas5717-no-speaker-output-seen

器件型号:TAS5717

您好!  

我们将 在 定制板中使用 TAS5717来推出扬声器。 所有电源、I2C 和 I2S 接口均已启动。 但我们无法在扬声器上看到任何输出或任何波形。

原理图如下:

我们还在 SW 中正确设置了音量(取消静音)。

请提供进一步调试的建议。

谢谢、

Naveen

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

    您好!  

    感谢您的快速响应。

    谢谢、

    Naveen

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

    你(们)好、Naveen

    感谢您的提问。

    通常、我们的调试步骤如下:

    1.确认所有电源是否稳定。

    2.确认 LC 滤波器之前是否存在 PWM 波形。

    3.读取错误报告寄存器0x02以确认可能会发生哪种错误。

    谢谢。

    Jess

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

    您好!

    感谢您的快速响应。 请在下面找到我们的观察结果:

    1.所有电源都稳定。

    2.附接捕获的 PWM 波形。 PWM 仅在没有扬声器的情况下观察、并且始终存在、无论是否播放音频。 但是、在连接扬声器的情况下、未观察到 PWM 波形。 我们是否在这里遗漏了任何东西?

    捕获的错误报告如下所示。 首次访问 I2C 时(每个下电上电后)、会出现错误(以黄色突出显示)、但从第二次开始、它就能正常工作。 我们如何解决这种行为?

    [675.772168]健康:电池 l=100 v=4351 t=25.1 h=2 st=5 c=-1678 fc=3581000 cc=0 chg=u
    [688.288296] q6asm_callback:cmd = 0x10bcd returned error = 0x1
    [688.294286]__q6ASM_cmd:DSP 返回错误[ADSP_EFAILED]操作码68557
    [688.309283]#### func tas571x_hw_params 行287格式= 0
    [688.315347]#### I2C 读取成功:0 Val:5
    [688.324585]#### func tas571x_set_bias _level 行350 Level 1.
    [688.330676]#### func tas571x_set_bias _level 行358进入 enalbe master clk
    [688.338219]是错误 MCLK:1.
    [688.341306] 3请求 MCLK:ffffffd309fced80
    [688.346640] i2c_geni 4a840.i2c:I2C 错误:-107
    [688.351612]### func tas571x_set_bias _level 行366级别1
    [688.358807]#### 状态寄存器为 RET:0 Val:0x0
    [688.363696]### func tas571x_set_bias _level 行350 Level 2.
    [688.370096]### func tas571x_set_bias _level 行350 level 3.

    谢谢、

    Naveen

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

    你(们)好

    请查找错误状态寄存器转储:

    [194.828559] 3请求 MCLK:fffffe48d65700
    [194.833582] i2c_geni 4a840.i2c:I2C 错误:-107
    [194.838412]### func tas571x_set_bias _level 行367层1
    [194.845130] reg TAS571X_MVOL_REG 电平= 0x3fe
    [194.849905] reg TAS571X_SYS_CTRL_2_REG = 0x0
    [194.854681]寄存器写入后 TAS571X_SYS_CTRL_2_REG = 0x0
    [194.861311]#### 寄存器 TAS571X_ERR_STATUS_REG、RET:0 Val:0x40
    [194.867472]#### func tas571x_set_bias _level 行351 Level 2.

    谢谢、

    Naveen

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

    你(们)好

    感谢您的确认。

    错误报告显示0x40。 这意味着 PLL 自动锁定错误。

    您能不能帮助检查 I2S 时钟是否满足 数据表图1中的时钟规格。

    对于器件、时钟正常后可自动恢复、因此时钟可能不是很稳定、因此会随机报告错误。

    正如您在连接 spk 时所说的、PWM 将消失。

    什么是扬声器的 DCR。 关于 您使用的 LC 滤波器的电感器、您是否已确认电感器的满足电流是否 大于 最大电流(PVDD/DCR)。

    谢谢。

    Jess

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

    你(们)好

    我们测量了 I2S SCK 时钟、根据规格、这似乎是正确的。 PFA 上升时间和完整波形。

         

    8欧姆是扬声器的 DCR。 我们使用的电感器规格如下:

    请帮助确认这是否足够?

    谢谢、

    Naveen

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

    你(们)好、Naveen

    电感器的满意度电流看起来太小。

    PVDD 为12v、DCR 为8欧姆、可能的最大电流约为12/8 = 1.5A。

    如果在 LC 之前存在纹波电流、则电感器需要承受更多电流 流经电感器。

    使用饱和电流和额定热电流均大于3A 的电感器会更好。  

    谢谢。

    Jess

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

    您好!

    我们尝试按照建议更改电感器、但行为仍然相同。

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

    你好,Dhanush

    考虑到您的故障 是时钟误差、我检查了上面的波形、您的 SCLK 为1.536MHz、您的 FS 频率是多少?

    每个通道有多少位?

    例如、我们使用48kHz、因此1.536M/48K = 32、那么每个通道使用16位呢?

    您是否检查了 SCLK、lrclk 之间的比率是否正确?

    BTW、以防万一、您的 I2S 发生器的 GND 是否已连接到 EVM 板的 GND?

    有时、如果这2个 GND 被分离、I2S 将不稳定。

    谢谢。

    Jess

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

    您好 Jesse、

    FS 频率为48Kz

    您的每个通道有多少位?

    >>> 它是48kHz 和16位

    您是否检查了 SCLK、lrclk 之间的比率是否正确?

    >>>两者同步,并附上相同的图片。

    请使用找到以下播放命令

    Bengal:/# tinymix "SEC_MI2S_RX 音频混合器 MultiMedia1""1"
    Bengal:/#                                                                                                                                                  
    Bengal:/# tinyplay /data/HighQuality.wav                                                                                                                                              
    播放示例:2通道、48000Hz、16位82731476字节

    BTW、以防万一、您的 I2S 发生器的 GND 是否已连接到 EVM 板的 GND?

    >>> 我们不使用 EVM 进行测试。 它是我们具有公共接地的定制板。

    播放开始时还附加了 al 日志。 它还包含 TI 寄存器。

     e2e.ti.com/.../playback_5F00_logs.txt

    谢谢

    Anil

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

    你(们)好,Anil

    您能否读取寄存器0x00、它反映了器件如何检测时钟。

    BTW、您也使用 MCLK 吗?

    我发现您的代码启用 MCLK、然后禁用 MCLK。

    然后我看到您的代码出现 MCLK 错误、我不确定是否理解您的日志、您是否确认了此问题?

    谢谢。

    Jesse

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

    您好 Jesse、

    我已在您可以看到的同一个日志中读取并打印了所有寄存器

    [80661.915517] afe_Apr_send_clk_pkt:保留0
    [80661.915550]寄存器 TAS571X_MVOL_REG 电平= 0x3fe
    [80661.920075]寄存器 TAS571X_SYS_CTRL_2_REG = 0x40
    [80661.925313]寄存器写入后 TAS571X_SYS_CTRL_2_REG = 0x0
    [80661.937485]#### 寄存器 TAS571X_ERR_STATUS_REG、RET:0  Val:0x0
    [80661.943487]#### func tas571x_set_bias _level 行351 Level 2.
    [80661.949555] tas571x 0-002B:Dapm:启动小工具播放

    [80661.891866]是错误 MCLK:1  这是实际打印的(!is_ERR (priv->MCLK)

    PR_ERR("is err MCLK:%d\n"(!is_ERR(priv->MCLK);

    谢谢

    Anil

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

    Anil

    感谢您的记录。

    我对您的日志不是很了解。

    我要检查的是寄存器下方的内容。  

    BTW、在您的日志中报告 MCLK 错误。 您是否使用了 MCLK 时钟?

    谢谢。

    Jesse

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

       请参阅时钟的波形。

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

    [186.271896] msm_rpm_flush_requests:error:more than 24 requests are buffered
    [226.914844] q6asm_callback:cmd = 0x10bcd returned error = 0x1
    [226.920837] __q6asm_cmd:DSP 返回错误[ADSP_EFAILED]操作码68557
    [226.941389] #### func tas571x_hw_params 行290格式= 0
    [226.947526] #### I2C 读取成功:0  Val:5
    [226.965205] #### func tas571x_set_bias _level 行353级别1
    [226.971322] ### func tas571x_set_bias _level 行361进入 enalbe 主 clk
    [226.979118] 错误 MCLK:1.
    [226.982096] 3请求 MCLK:ffffffc3ec337a00
    [226.988037] i2c_geni 4a840.i2c:I2C 错误:-107
    [226.995633] 无法获取 clk = 0
    [226.999050] ### func tas571x_set_bias _level 行381级别1
    [227.005520] 无法获取 clk = 0
    [227.009025] 寄存器 TAS571X_MVOL_REG 电平= 0x3fe
    [227.013616] 寄存器 TAS571X_SYS_CTRL_2_REG = 0x40
    [227.018478] 寄存器写入后 TAS571X_SYS_CTRL_2_REG = 0x0
    [227.024700] reg TAS571X_SYS_CTRL_2_REG = 0x1021345
    [227.030508] #### 寄存器 TAS571X_ERR_STATUS_REG、RET:0  Val:0x0
    [227.036598] ### func tas571x_set_bias _level 行353级别2
    [227.042714] ### func tas571x_set_bias _level 行353 3级
    [227.048772] afe_get_cal_topology_id:CAL_type 8未为此端口4098初始化
    [227.056491] 未找到 SEND_FAE_CAL_TYPE CAL_BLOCK!!
    [273.753180] i2c_geni 4a840.i2c:I2C 错误:-107

    清除状态寄存器(0x02)并读取、结果为0x00、CLKS 应该正常。

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

    你(们)好

    现在您的错误已被清除。

    但仍然没有输出? 我理解正确吗?

    我不确定是否可以为您提供帮助、您能否在以下操作中尝试一下?

    移除 MCLK 以检查电路是否正常工作?

    即使没有 MCLK、I2S 也应该能够工作。

    谢谢。

    Jesse

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

    如何为无 MCLK 设置寄存器? FAE 能否访问我们的 BJ 办公室?谢谢。

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

    你(们)好

    您是否根据 I2S 格式尝试过该寄存器?

    我对您的日志描述不是很清楚、因为您的日志会不断显示 MCLK 或 clk 错误。

    如果它们只是意味着日志中的行更少、那么这应该是可以的。

    需要确认的另一件事是、您说过、连接扬声器时、PWM 将消失。

    您是否尝试将扬声器更改为电阻? 它是否仍然有相同的问题?

    谢谢。

    Jesse

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

    请忽略日志中的这些行、示波器测量时钟