TI的工程师您好:
我们的会议音频产品使用的aic3106作为codec,产品采用了2路mic输入,一直使用的是lin1L和lin1r作为模拟通道输入。最近有客户反馈,一个mic接入采集卡,另外一个mic不接入采集卡,当很大声音对着一个mic喊话时,另外一个mic也能录到声音。
接到用户反馈后,我们还原了使用环境,并重现了问题。通过示波器只量到了一路模拟信号输入,但i2s的数据线上2路都有信号。进一步测试发现,大声说话时的信号饱和被削波了,那部分饱和的信号在另一路映射出来了。
所以我们怀疑是不是配置的问题导致,饱和的那部分信号被传到另外一路去了
我们用的是line1L\line1R的差分输入,其他没有用模拟通道的都关闭了。检查了半天也没有发现大的问题,所以请教一下原厂的工程师。麻烦帮我们看一下
下面是配置的代码:
//disable line2L、R
I2CRegWrite(baseAddr, AIC31_P0_REG20, 0x78);
I2CRegWrite(baseAddr, AIC31_P0_REG21, 0xF8);
I2CRegWrite(baseAddr, AIC31_P0_REG23, 0x78);
I2CRegWrite(baseAddr, AIC31_P0_REG24, 0xF8);
// MIC IN disable
I2CRegWrite(baseAddr, AIC31_P0_REG17, 0xFF);
I2CRegWrite(baseAddr, AIC31_P0_REG18, 0xFF);
// Line L1L
I2CRegWrite(baseAddr, AIC31_P0_REG19, 0x84);
// Line L1R
I2CRegWrite(baseAddr, AIC31_P0_REG22, 0x84);
I2CRegWrite(baseAddr, AIC31_P0_REG15, adc_gain_L);
I2CRegWrite(baseAddr, AIC31_P0_REG16, adc_gain_R);