主题: TLV320AIC31中讨论的其它部件
我使用TLV320AIC3104修订IIS信号,在Android系统启动之前,MCU initiae2e.ti.com/.../19_5F00_Audio-Codec.pdflize上的耳机输出噪音约为2.5秒。
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.
我使用TLV320AIC3104修订IIS信号,在Android系统启动之前,MCU initiae2e.ti.com/.../19_5F00_Audio-Codec.pdflize上的耳机输出噪音约为2.5秒。
尊敬的
感谢您的帮助!
测试 3104 引脚19和引脚23,输出,
如下所示的寄存器配置和初始化,如果有任何不清楚的地方,请问我,非常感谢 !
现在最严重的问题是系统启动时的噪音。
void tlv320_DrvInit (void)
{
HI_ERR_AIC3X("tlv320_Init\n");
tlv320aic31_write(I2C_AIC31, 0x1, 0x80);
Time_Delay_us (50);
#IF 0
/* MCLK =27M,使用PLL模式*/
tlv320aic31_write(I2C_AIC31, 102, 0xC2);
tlv320aic31_write(I2C_AIC31, 3, 0x82); //set p=2
tlv320aic31_write(I2C_AIC31, 4, 0x1c); //set j=7
tlv320aic31_write(I2C_AIC31, 5, 0x2C);
tlv320aic31_write(I2C_AIC31, 6, 0x8); //reg5和reg6 set d=2818
tlv320aic31_write(I2C_AIC31, 11, 0x1);//set r=1
tlv320aic31_write (I2C_AIC31,2,0x00); //fs=fsef/6=8kHz
#否则
/* MCLK = 12.288M,非PLL模式*/
tlv320aic31_write(I2C_AIC31, 102, 0x32);//IF PLL,p=r=1,k=8
tlv320aic31_write (I2C_AIC3.1101万,0x01);
tlv320aic31_write (I2C_AIC31,3,0x10);
tlv320aic31_write (I2C_AIC31,2,0x00);
//tlv320aic31_write (I2C_AIC31,10,0x08);
#endif
tlv320aic31_write(I2C_AIC31, 8, 0x30);
//tlv320aic31_write (I2C_AIC31,8, 0x20);
tlv320aic31_write(I2C_AIC31, 9, 0x27 ); //16位
//tlv320aic31_write(I2C_AIC31, 15, 0xc );
//tlv320aic31_write(I2C_AIC31, 16, 0xc );
tlv320aic31_write(I2C_AIC31, 12, 0x50); //0表示已禁用
#ifdef Board_Type_FPGA
tlv320aic31_write(I2C_AIC31, 25, 0x0);
#否则
tlv320aic31_write(I2C_AIC31, 25, 0x80);//启用麦克风偏置
#endif
tlv320aic31_write(I2C_AIC31, 17, 0xF );
tlv320aic31_write(I2C_AIC31, 18, 0xf0);
#IF 1.
tlv320aic31_write(I2C_AIC31, 15, 0);
tlv320aic31_write(I2C_AIC31, 16, 0);
#ifdef Board_Type_FPGA
tlv320aic31_write (I2C_AIC31,19,0x7);//0x7,ENA左侧ADC
tlv320aic31_write (I2C_AIC31,22,0x7);//0x7,ENA右ADC
#否则
tlv320aic31_write(I2C_AIC31, 19, 0x07);//左ADC单端模式,0dB音量;ENA电源
tlv320aic31_write(I2C_AIC31, 22, 0x07);//右ADC单端模式,0dB音量;ENA电源
#endif
tlv320aic31_write(I2C_AIC31, 28, 0);
tlv320aic31_write(I2C_AIC31, 31, 0);
tlv320aic31_write (I2C_AIC31,26,0x00);
tlv320aic31_write(I2C_AIC31, 29, 0x00);
#否则
tlv320aic31_write(I2C_AIC31, 19, 0x4);//差分输入;输入电平控制(非衰减);ADC电源
tlv320aic31_write(I2C_AIC31, 22, 0x4);
tlv320aic31_write (I2C_AIC31,26,0x95);//AGC已启用;设置目标增益,攻击时间,衰减时间(中)
tlv320aic31_write (I2C_AIC31,27,0xc0);//输入增益控制(最大值(放大,调整值级别))
tlv320aic31_write(I2C_AIC31, 28, 0x2);//滞后和剪辑已禁用;噪声阈值控制
tlv320aic31_write(I2C_AIC31, 29, 0x95);
tlv320aic31_write(I2C_AIC31, 30, 0xc0);
tlv320aic31_write(I2C_AIC31, 31, 0x2);
tlv320aic31_write(I2C_AIC31, 34, 0x0);//恢复控制
tlv320aic31_write(I2C_AIC31, 35, 0x0);
#endif
//tlv320aic31_write(I2C_AIC31,27,0xfe);//输入增益控制(最大值(放大,调整值级别))
//tlv320aic31_write(I2C_AIC31,28,0x0);//滞后和剪辑已禁用;噪声阈值控制
//tlv320aic31_write(I2C_AIC31,30,0xfe);
//tlv320aic31_write(I2C_AIC3131,0x0);
#ifndef Board_Type_FPGA
tlv320aic31_write (I2C_AIC31,7,0xA);//设置FSref;双速率模式或非;D1~D4将I2S设置为DAC,两个DAC均打开
tlv320aic31_write(I2C_AIC31, 14, 0x80);//交流耦合的高功率输出
tlv320aic31_write(I2C_AIC31, 37, 0xc0); //左和右DAC电源
tlv320aic31_write(I2C_AIC31, 40, 0x80);//输出共模电压1.65v,禁用soft_step音量
tlv320aic31_write (I2C_AIC31,41,0x00);//选择DAC_L(R)1至高功率;左右音量相关控件
tlv320aic31_write (I2C_AIC31,42,0x68);//输出驱动器弹出减少(中)
tlv320aic31_write (I2C_AIC31,43,0x08);//左DAC通道未静音;DAC数字音量控制(衰减,调整值级别)
tlv320aic31_write (I2C_AIC31,44,0x08);//右DAC通道未静音;DAC数字音量控制(衰减,调整值级别)
tlv320aic31_write(I2C_AIC31, 47, 0x80);//DAC_L1被路由到HPLOUT;输出级音量控制(无衰减)
tlv320aic31_write(I2C_AIC31, 64, 0x80);//DAC_L1路由到HPROUT;输出级音量控制(无衰减)
tlv320aic31_write(I2C_AIC31, 51, 0x9f);//左输出电平控制(放大,最大);输出静音,电源;
tlv320aic31_write(I2C_AIC31, 65, 0x9f);//右输出电平控制(放大,最大);输出静音,电源;
/*启用LEFT LOP/M和RIGHT LOP/M */
tlv320aic31_write (I2C_AIC31,81,0x00);//0:PGA_L未路由至LEFT LOP/M;
tlv320aic31_write (I2C_AIC31,82,0x80);//0:DAC_L1路由到LEFT LOP/M
tlv320aic31_write (I2C_AIC31,86,0x0B);//左侧LOP电平0dB,取消静音,通电;
tlv320aic31_write (I2C_AIC31,91,0x00);//0:PGA_R未路由至Rright_LOP/M;
tlv320aic31_write(I2C_AIC31, 92, 0x80);//0:DAC_R1路由到RIGHT LOP/M
tlv320aic31_write (I2C_AIC31,93,0x0B);//左侧LOP电平0dB,取消静音,通电;
#否则
tlv320aic31_write (I2C_AIC31,7,0xA);//设置FSref;双速率模式或非;D1~D4将I2S设置为DAC,两个DAC均打开
tlv320aic31_write(I2C_AIC31, 14, 0x80);//交流耦合的高功率输出
// tlv320aic31_write(I2C_AIC31,37,0xF0);//左,右DAC电源
tlv320aic31_write(I2C_AIC31, 37, 0xc0); //左和右DAC电源
//tlv320aic31_write(I2C_AIC31,38,0x3e);//短路保护控制
tlv320aic31_write(I2C_AIC31, 40, 0x80);//输出共模电压1.65v,禁用soft_step音量
//tlv320aic31_write(I2C_AIC31,41,0x1);//选择DAC_L(R)2至高功率;左右音量相关控件
tlv320aic31_write(I2C_AIC31, 41, 0xa0);//选择DAC_L(R)2至高功率;左右音量相关控件
//tlv320aic31_write(I2C_AIC31,42,0x08);//输出驱动器弹出减少(中)
tlv320aic31_write (I2C_AIC31,42,0x68);//输出驱动器弹出减少(中)
// tlv320aic31_write(I2C_AIC31,43,0x0);//左DAC通道未静音;DAC数字音量控制(衰减,调整值级别)
// tlv320aic31_write(I2C_AIC31,44,0x0);//右DAC通道未静音;DAC数字音量控制(衰减,调整值级别)
tlv320aic31_write (I2C_AIC31,43,0x08);//左DAC通道未静音;DAC数字音量控制(衰减,调整值级别)
tlv320aic31_write (I2C_AIC31,44,0x08);//右DAC通道未静音;DAC数字音量控制(衰减,调整值级别)
tlv320aic31_write(I2C_AIC31, 47, 0x80);//DAC_L1被路由到HPLOUT;输出级音量控制(无衰减)
tlv320aic31_write(I2C_AIC31, 64, 0x80);//DAC_L1路由到HPROUT;输出级音量控制(无衰减)
tlv320aic31_write(I2C_AIC31, 51, 0x9f);//左输出电平控制(放大,最大);输出静音,电源;
tlv320aic31_write(I2C_AIC31, 65, 0x9f);
#endif
}