Discuz! Board

标题: 解决更新音频之后,开机出现pop声的问题 [打印本页]

作者: zangcf    时间: 2016-1-8 11:41
标题: 解决更新音频之后,开机出现pop声的问题
解决方法就是先使用老的参数写入,然后使用新的参数再写一次。
static void eamp_poweron(void)
{
    printk("sunde:eamp_poweron\n");
    unsigned char buffer[5];
.....
//X05 8C
    buffer[0] = 0x05;
    buffer[1] = 0x8C;
    AUDDMA_i2c_write(0x34, &buffer[0], 2);

    msleep(50);

    late_eamp_write_Biquadsbyte21();  //add by sunde for test EQ 20141229
    late_eamp_write_DRCsbyte21();  //add by sunde for test EQ 20141229

//X06 00
    buffer[0] = 0x06;
    buffer[1] = 0x30;
    AUDDMA_i2c_write(0x34, &buffer[0], 2);

//X07 00   
    buffer[0] = 0x07;
    buffer[1] = 0x30;
    AUDDMA_i2c_write(0x34, &buffer[0], 2);


    return;
}


作者: zangcf    时间: 2016-1-8 11:42
static int late_eamp_write_Biquadsbyte21(void)
{
        int i=0;
        AUDDMA_i2c_write(0x34,&bufferBiquads[0],sizeof(bufferBiquads)/sizeof(unsigned char));
        for(i=0;i<20;i++)
                {
                        AUDDMA_i2c_write(0x34,&late_bufferBiquads21_1[i][0],21);
                }
}

static int late_eamp_write_DRCsbyte21(void)
{
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_0[0],sizeof(late_bufferDRCs21_0)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_1[0],sizeof(late_bufferDRCs21_1)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_2[0],sizeof(late_bufferDRCs21_2)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_3[0],sizeof(late_bufferDRCs21_3)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_4[0],sizeof(late_bufferDRCs21_4)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_5[0],sizeof(late_bufferDRCs21_5)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_6[0],sizeof(late_bufferDRCs21_6)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_7[0],sizeof(late_bufferDRCs21_7)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_8[0],sizeof(late_bufferDRCs21_8)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_9[0],sizeof(late_bufferDRCs21_9)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_10[0],sizeof(late_bufferDRCs21_10)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_11[0],sizeof(late_bufferDRCs21_11)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_12[0],sizeof(late_bufferDRCs21_12)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_13[0],sizeof(late_bufferDRCs21_13)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_14[0],sizeof(late_bufferDRCs21_14)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_15[0],sizeof(late_bufferDRCs21_15)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_16[0],sizeof(late_bufferDRCs21_16)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_17[0],sizeof(late_bufferDRCs21_17)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_18[0],sizeof(late_bufferDRCs21_8)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_19[0],sizeof(late_bufferDRCs21_19)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_20[0],sizeof(late_bufferDRCs21_20)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_21[0],sizeof(late_bufferDRCs21_21)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_22[0],sizeof(late_bufferDRCs21_22)/sizeof(unsigned char));       
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_23[0],sizeof(late_bufferDRCs21_23)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_24[0],sizeof(late_bufferDRCs21_24)/sizeof(unsigned char));
        AUDDMA_i2c_write(0x34,&late_bufferDRCs21_25[0],sizeof(late_bufferDRCs21_25)/sizeof(unsigned char));

}
作者: zangcf    时间: 2016-1-8 11:43
/* DRCs 2.1*/
unsigned char late_bufferDRCs21_0[9]=        {0x3A,  0x00,  0x7F,  0xFF,  0xB4,  0x00,  0x00,  0x00,  0x4B };                                                        
unsigned char late_bufferDRCs21_1[9]=        {0x3B,  0x00,  0x7F,  0xFF,  0xB4,  0x00,  0x00,  0x00,  0x4B };                                                      
unsigned char late_bufferDRCs21_2[9]=        {0x3C,  0x00,  0x7F,  0xFF,  0xB4,  0x00,  0x00,  0x00,  0x4B };                                                        
unsigned char late_bufferDRCs21_3[5]=        {0x40,  0xFC,  0x83,  0x10,  0xD4 };                                                                                 
unsigned char late_bufferDRCs21_4[5]=        {0x41,  0x0F,  0x83,  0x33,  0x34 };                                                                                    
unsigned char late_bufferDRCs21_5[5]=        {0x42,  0x00,  0x08,  0x42,  0x10 };                                                                                 
unsigned char late_bufferDRCs21_6[5]=        {0x46,  0x00,  0x00,  0x00,  0x00 };                                                                                 
unsigned char late_bufferDRCs21_7[9]=        {0x39,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00 };                                                         
unsigned char late_bufferDRCs21_8[9]=        {0x3D,  0x00,  0x7F,  0xFF,  0xB4,  0x00,  0x00,  0x00,  0x08 };                                                     
unsigned char late_bufferDRCs21_9[9]=        {0x3E,  0x00,  0x7F,  0xFF,  0xB4,  0x00,  0x00,  0x00,  0x08 };                                                      
unsigned char late_bufferDRCs21_10[9]=        {0x3F,  0x00,  0x7F,  0xFF,  0xB4,  0x00,  0x00,  0x00,  0x08 };                                                      
unsigned char late_bufferDRCs21_11[5]=        {0x43,  0xFC,  0x83,  0x10,  0xD4 };                                                                                 
unsigned char late_bufferDRCs21_12[5]=        {0x44,  0x0F,  0x83,  0x33,  0x34 };                                                                                 
unsigned char late_bufferDRCs21_13[5]=        {0x45,  0x00,  0x08,  0x42,  0x10 };                                                                                 
unsigned char late_bufferDRCs21_14[5]=        {0x46,  0x00,  0x00,  0x00,  0x00 };                                                                                 
unsigned char late_bufferDRCs21_15[13]=        {0x52,  0x00,  0x80,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00 };                           
unsigned char late_bufferDRCs21_16[9]=        {0x60,  0x00,  0x00,  0x00,  0x00,  0x00,  0x80,  0x00,  0x00 };
unsigned char late_bufferDRCs21_17[17]=        {0x53,  0x00,  0x80,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x80,  0x00,  0x00 };
unsigned char late_bufferDRCs21_18[17]=        {0x54,  0x00,  0x80,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x80,  0x00,  0x00 };
unsigned char late_bufferDRCs21_19[5]=        {0x56,  0x00,  0x80,  0x00,  0x00 };                                                                                    
unsigned char late_bufferDRCs21_20[5]=        {0x57,  0x00,  0x02,  0x00,  0x00 };                                                                                 
unsigned char late_bufferDRCs21_21[13]=        {0x51,  0x00,  0x80,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00 };                           
unsigned char late_bufferDRCs21_22[13]=        {0x55,  0x00,  0x80,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00 };                           
unsigned char late_bufferDRCs21_23[13]=        {0x52,  0x00,  0x80,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00 };   
//unsigned char late_bufferDRCs21_24[2]=        {0x07,  0xFF };
//unsigned char late_bufferDRCs21_25[2]=        {0x05,  0x00 };     
unsigned char late_bufferDRCs21_24[2]={0x1A,0x0A};                                                            
unsigned char late_bufferDRCs21_25[2]={0x05,0x8C};
作者: zangcf    时间: 2016-1-8 11:43
unsigned char late_bufferBiquads21_1[][21]=
{
{0x29,  0x00,  0x7E,  0x5A,  0x0E,  0x0F,  0x03,  0x4B,  0xE4,  0x00,  0x7E,  0x5A,  0x0E,  0x00,  0xFC,  0xAE,  0xAD,  0x0F,  0x83,  0x46,  0x75 },
{0x30,  0x00,  0x7E,  0x5A,  0x0E,  0x0F,  0x03,  0x4B,  0xE4,  0x00,  0x7E,  0x5A,  0x0E,  0x00,  0xFC,  0xAE,  0xAD,  0x0F,  0x83,  0x46,  0x75 },
{0x2A,  0x00,  0x80,  0xB3,  0x0F,  0x0F,  0x00,  0x6B,  0xA2,  0x00,  0x7E,  0xE1,  0xE1,  0x00,  0xFF,  0x94,  0x5E,  0x0F,  0x80,  0x6B,  0x0F },
{0x2B,  0x00,  0x80,  0x80,  0x92,  0x0F,  0x00,  0xD7,  0xFE,  0x00,  0x7E,  0xA9,  0xA8,  0x00,  0xFF,  0x28,  0x02,  0x0F,  0x80,  0xD5,  0xC5 },
{0x2C,  0x00,  0x80,  0x78,  0x17,  0x0F,  0x02,  0xBD,  0x6E,  0x00,  0x7C,  0xE0,  0xB3,  0x00,  0xFD,  0x42,  0x92,  0x0F,  0x82,  0xA7,  0x35 },
{0x2D,  0x00,  0x7F,  0x66,  0xD4,  0x0F,  0x09,  0xCD,  0x49,  0x00,  0x77,  0x53,  0x1F,  0x00,  0xF6,  0x32,  0xB7,  0x0F,  0x89,  0x46,  0x0C },
{0x2E,  0x00,  0x7A,  0x71,  0x6F,  0x0F,  0x22,  0x02,  0x19,  0x00,  0x6B,  0x61,  0x35,  0x00,  0xDD,  0xFD,  0xE7,  0x0F,  0x9A,  0x2D,  0x5B },
{0x2F,  0x00,  0x7C,  0xA9,  0x17,  0x0F,  0x41,  0x33,  0x6B,  0x00,  0x5F,  0xA7,  0xC6,  0x00,  0xBE,  0xCC,  0x95,  0x0F,  0xA3,  0xAF,  0x23 },
{0x58,  0x00,  0x77,  0x97,  0x2B,  0x0F,  0xCA,  0xDE,  0x1B,  0x00,  0x55,  0xB2,  0x85,  0x00,  0x35,  0x21,  0xE5,  0x0F,  0xB2,  0xB6,  0x50 },
{0x59,  0x00,  0x75,  0x05,  0x98,  0x00,  0x6E,  0xD4,  0x00,  0x00,  0x41,  0x08,  0x82,  0x0F,  0x91,  0x2C,  0x00,  0x0F,  0xC9,  0xF1,  0xE5 },
{0x31,  0x00,  0x80,  0xB3,  0x0F,  0x0F,  0x00,  0x6B,  0xA2,  0x00,  0x7E,  0xE1,  0xE1,  0x00,  0xFF,  0x94,  0x5E,  0x0F,  0x80,  0x6B,  0x0F },
{0x32,  0x00,  0x80,  0x66,  0xF7,  0x0F,  0x00,  0xD7,  0xFE,  0x00,  0x7E,  0xC3,  0x43,  0x00,  0xFF,  0x28,  0x02,  0x0F,  0x80,  0xD5,  0xC5 },
{0x33,  0x00,  0x80,  0x78,  0x17,  0x0F,  0x02,  0xBD,  0x6E,  0x00,  0x7C,  0xE0,  0xB3,  0x00,  0xFD,  0x42,  0x92,  0x0F,  0x82,  0xA7,  0x35 },
{0x34,  0x00,  0x7F,  0x66,  0xD4,  0x0F,  0x09,  0xCD,  0x49,  0x00,  0x77,  0x53,  0x1F,  0x00,  0xF6,  0x32,  0xB7,  0x0F,  0x89,  0x46,  0x0C },
{0x35,  0x00,  0x7A,  0x71,  0x6F,  0x0F,  0x22,  0x02,  0x19,  0x00,  0x6B,  0x61,  0x35,  0x00,  0xDD,  0xFD,  0xE7,  0x0F,  0x9A,  0x2D,  0x5B },
{0x36,  0x00,  0x7C,  0xA9,  0x17,  0x0F,  0x41,  0x33,  0x6B,  0x00,  0x5F,  0xA7,  0xC6,  0x00,  0xBE,  0xCC,  0x95,  0x0F,  0xA3,  0xAF,  0x23 },
{0x5C,  0x00,  0x7B,  0x78,  0x42,  0x0F,  0xC9,  0x24,  0xE4,  0x00,  0x58,  0x7A,  0x28,  0x00,  0x36,  0xDB,  0x1C,  0x0F,  0xAC,  0x0D,  0x95 },
{0x5D,  0x00,  0x75,  0x05,  0x98,  0x00,  0x6E,  0xD4,  0x00,  0x00,  0x41,  0x08,  0x82,  0x0F,  0x91,  0x2C,  0x00,  0x0F,  0xC9,  0xF1,  0xE5 },
{0x5A,  0x00,  0x01,  0x0D,  0x7D,  0x00,  0x02,  0x1A,  0xFB,  0x00,  0x01,  0x0D,  0x7D,  0x00,  0xD6,  0xEE,  0xEA,  0x0F,  0xA4,  0xDB,  0x1F },
{0x5B,  0x00,  0x7F,  0xC3,  0x63,  0x0F,  0x00,  0x79,  0x3A,  0x00,  0x7F,  0xC3,  0x63,  0x00,  0xFF,  0x86,  0xA9,  0x0F,  0x80,  0x79,  0x1E }
};




欢迎光临 Discuz! Board (http://47.89.242.157:9000/bbs/discuz/) Powered by Discuz! X3.2