采用tas2505作为AMP,驱动链接:https://github.com/dangtranhieu2012/tas2505-linux-driver/blob/master/tas2505.c
平台采用高通QCS610,测量芯片I2S四路信号都有,但Spk+/Spk-输出波形为方波,使用tinyplay播放wav文件也没有声音输出。
I2C寄存器设置采用 slau472.pdf Page 49 4.0.7 Example
Amy Luo:
您好,
可以附上Spk+和Spk-差分输出波形吗
Yue Ding:
回复 Amy Luo:
您好:
波形请见附件。
另外我们这边比较紧急,方便留一下您的联系方式么,比如手机或者固定电话?
Amy Luo:
回复 Yue Ding:
输出有信号,您的负载参数是怎样的呢,可以把原理图附上来吗
在论坛上可以准确的查看问题、图片、文档等信息,可以更详细分析问题,另外也方便其他用户参考类似问题的解决方法,这也是为什么公司开设网站论坛做支持的原因,因此建议在论坛上讨论分析解决问题,若比较紧急我会对于您的信息尽快给您以反馈
Yue Ding:
回复 Amy Luo:
Amy Luo:
回复 Yue Ding:
R3306是NC的是吗,
建议您去掉R3314看一下是否有声音输出,R3314和R3317是用来检测输出电压的吗,不建议加这个电路,因为R3314和R3317对于SPKM相当于单端负载,并且tas2505有以下负载诊断功能:
– 输出至 GND 短路
– 终端至终端短路
– 输出至电源短路
– 过热
– 直流输入
Yue Ding:
回复 Amy Luo:
您好:
我这边尝试单独卸掉R3314,单独卸掉R3317,同时卸掉R3314和R3317,波形和之前一样,并且没有声音输出。以下是我这边寄存器的配置,您可以帮忙check一下么?
static const struct reg_default tas2505_reg_defaults[] = { { TAS2505_PAGECTL, 0x00 }, { TAS2505_RESET, 0x01 }, { TAS2505_PAGECTL, 0x01 }, { TAS2505_LDO_CTRL, 0x00 }, { TAS2505_REF_POR_LDO_BGAP_CTRL, 0x10 }, { 1 * 128 + 0x09 , 0x03 }, { 1 * 128 + 0x0C , 0x04 }, { 1 * 128 + 0x16 , 0x00 }, { 1 * 128 + 0x18 , 0x80 }, { 1 * 128 + 0x09 , 0x23 }, { 1 * 128 + 0x10 , 0x00 }, { TAS2505_SPKVOL1 , 0x00 }, { TAS2505_SPKVOL2 , 0x10 }, { TAS2505_SPKAMPCTRL1 , 0x02 },};
I2C寄存器设置采用 slau472.pdf Page 51 4.0.9 Example
Amy Luo:
回复 Yue Ding:
再向您确认一下,您上面附的示波器波形是Spk+和Spk-的单端信号,还是Spk+和Spk-的差分信号呢,信号频率大约为300KHZ吗?
您的speaker参数是怎样的呢,多少Ω的呢
Yue Ding:
回复 Amy Luo:
您好:
是SPk+/-的单端信号,频率300KHz,是8欧的
Amy Luo:
回复 Yue Ding:
目测看您测得的Spk+和Spk-的单端信号是一样的,这样的话,差分信号就是0,speaker上就没有驱动信号。
您寄存器配置可以读出来吗,以确认已经正确配置进去?
这应该不是您完整的寄存器配置,您可以参考手册 slau472.pdf示例配置
Yue Ding:
回复 Amy Luo:
我上述参考的就是slau472.pdfPage 51
4.0.9 Example Register Setup to Play AINL and AINR Through Headphone/Speaker Outputs另外我们这个适合于哪一个exsample,可以给一个么?