https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1329710/tas5806m-overcurrent-and-no-sound
器件型号:TAS5806M大家好!
在4 Ω 扬声器的单声道模式(PBTL)下使用的 TAS5806M、我们目前遇到过流问题。
我们已经成功地将此组件用于早期原型板、我们可以在该板上播放声音并调整音量。 在这种新配置中、原理图和程序是上一版本的直接副本、实际上只是对布局进行了修改。
在初始化之后、当写入 DEVICE_CTRL_2寄存器以在播放模式下配置器件状态控制寄存器时、会发生过流。
此时、扬声器会听到200ns 脉冲、并且 CH1_OC_I (左声道过流故障)位设置为 CHAN_FAULT 寄存器中的 H。
因此、无法播放任何声音。 OUT_A 和 OUT_B 输出如下所示、PVDD = 24V。

器件的 init 函数:
void TAS5806M_Init(void)
{
HAL_Delay(10); // wait at least 5 ms from PDN set to 1
// Reset
TAS5806M_SetRegister(TAS5806M_REGISTER_RESET_CTRL, 1 << 4 | 1 << 0);
TAS5806M_SetRegister(TAS5806M_REGISTER_RESET_CTRL, 0);
// Reset DSP
TAS5806M_SetRegister(TAS5806M_REGISTER_DEVICE_CTRL_2, (1 << 4) | 0x02);
TAS5806M_SetRegister(TAS5806M_REGISTER_DEVICE_CTRL_2, 0x02);
// PBTL (mono)
TAS5806M_SetRegister(TAS5806M_REGISTER_DEVICE_CTRL_1, TAS5806M_REGISTER_DEVICE_CTRL_1_VALUE);
TAS5806M_SetRegister(TAS5806M_REGISTER_SAP_CTRL1, 0); // 16 bits
TAS5806M_SetRegister(TAS5806M_REGISTER_DIG_VOL_CTRL, 10); // 24 - 0.5 * N dB => -15 dB for 78
TAS5806M_SetRegister(TAS5806M_REGISTER_AGAIN, 0x0); // 0 dB
TAS5806M_SetRegister(TAS5806M_REGISTER_SAP_CTRL3, 0x10);
HAL_Delay(10); // wait at least 5 ms
}
原理图:

我们想知道问题是电子产品还是软件。 已更换 IC、但故障仍然存在。
有人有什么建议吗? 非常感谢任何反馈!
谢谢
EL

