亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? audio.c

?? 車載DVD+tuner,意法半導(dǎo)體的方案. 純C編寫.
?? C
?? 第 1 頁 / 共 3 頁
字號:
/*********************************************************
	Project:		TF60K
	File name:	Aud_main.c
	Description:	
	Write/Modify:	Perry.Liang
	Time:		2005-2-18- 15:12:49
*********************************************************/
#include "public.h"

#define UP 		1
#define DOWN	-1

#pragma INTO_ROM
static const unsigned char VolTable[]=
{
	0x7F, // mute// 0
	0x5F, // -79dB
	0x5E, // -78dB
	0x5D, // -77dB
	0x5C, // -76dB
	0x5B, // -75dB
	0x5A, // -74dB
	0x59, // -73dB
	0x58, // -72dB
	0x57, // -71dB
	0x56, // -70dB// 10
	0x55, // -69dB
	0x54, // -68dB
	0x53, // -67dB
	0x52, // -66dB
	0x51, // -65dB
	0x50, // -64dB
	0x4F, // -63dB
	0x4E, // -62dB
	0x4D, // -61dB
	0x4C, // -60dB// 20
	0x4B, // -59dB
	0x4A, // -58dB
	0x49, // -57dB
	0x48, // -56dB
	0x47, // -55dB
	0x46, // -54dB
	0x45, // -53dB
	0x44, // -52dB
	0x43, // -51dB
	0x42, // -50dB// 30
	0x41, // -49dB
	0x40, // -48dB
	0x3F, // -47dB
	0x3E, // -46dB
	0x3D, // -45dB
	0x3C, // -44dB
	0x3B, // -43dB
	0x3A, // -42dB
	0x39, // -41dB
	0x38, // -40dB// 40
	0x37, // -39dB
	0x36, // -38dB
	0x35, // -37dB
	0x34, // -36dB
	0x33, // -35dB
	0x32, // -34dB
	0x31, // -33dB
	0x30, // -32dB
	0x2F, // -31dB
	0x2E, // -30dB// 50
	0x2D, // -29dB
	0x2C, // -28dB
	0x2B, // -27dB
	0x2A, // -26dB
	0x29, // -25dB
	0x28, // -24dB
	0x27, // -23dB
	0x26, // -22dB
	0x25, // -21dB
	0x24, // -20dB// 60
	0x23, // -19dB
	0x22, // -18dB
	0x21, // -17dB
	0x20, // -16dB
	0x1F, // -15dB
	0x1E, // -14dB
	0x1D, // -13dB
	0x1C, // -12dB
	0x1B, // -11dB
	0x1A, // -10dB// 70
	0x19, // -9dB
	0x18, // -8dB
	0x17, // -7dB
	0x16, // -6dB
	0x15, // -5dB
	0x14, // -4dB
	0x13, // -3dB
	0x12, // -2dB
	0x11, // -1dB
	0x00, // +0dB// 80
	0x01, // +1dB
	0x02, // +2dB
	0x03, // +3dB
	0x04, // +4dB
	0x05, // +5dB
	0x06, // +6dB
	0x07, // +7dB
	0x08, // +8dB
	0x09, // +9dB
	0x0A, // +10dB// 90
	0x0B, // +11dB
	0x0C, // +12dB
	0x0D, // +13dB
	0x0E, // +14dB
	0x0F // +15dB
};

static const unsigned char VolChangeTable[]=
{
	0,6,11,16,20,24,26,28,30,32,34,
	36,38,40,42,43,44,45,46,47,48,
	49,50,51,52,53,54,55,56,57,58,
	59,60,61,62,63,64,65,66,67,68,
	68,69,70,71,72,73,74
};

static const unsigned char SourceTable[]=
{
	1,0,2,3,6
};

static const unsigned char LoudTable[]=
{
	0x00, // +0dB
//	0x01, // +1dB
//	0x02, // +2dB
//	0x03, // +3dB
	/*0x04, // +4dB
	0x05, // +5dB*/
	0x06, // +6dB		//low
	/*0x07, // +7dB
	0x08, // +8dB
	0x09, // +9dB*/
	0x0A, // +10dB		//mid
	/*0x0B, // +11dB
	0x0C, // +12dB
	0x0D, // +13dB
	0x0E, // +14dB*/
	0x0F // +15dB		//high
};

static const unsigned char SubwTable[]=
{
	0x00, // +0dB
	0x01, // +1dB
	0x02, // +2dB
	0x03, // +3dB
	0x04, // +4dB
	0x05, // +5dB
	0x06, // +6dB
	0x07, // +7dB
	0x08, // +8dB
	0x09, // +9dB
//	0x0A, // +10dB
	0x0B, // +11dB
//	0x0C, // +12dB
	0x0D, // +13dB
//	0x0E, // +14dB
	0x0F, // +15dB

	0x7F // mute
};

static const unsigned char BasTreTable[]=
{
//0x0F, // -15dB
//0x0E, // -14dB
//0x0D, // -13dB
0x0C, // -12dB    
//0x0B, // -11dB
0x0A, // -10dB
//0x09, // -9dB
0x08, // -8dB
//0x07, // -7dB
0x06, // -6dB
//0x05, // -5dB
0x04, // -4dB
//0x03, // -3dB
0x02, // -2dB
//0x01, // -1dB
0x10, // +0dB
//0x11, // +1dB
0x12, // +2dB
//0x13, // +3dB
0x14, // +4dB
//0x15, // +5dB
0x16, // +6dB
//0x17, // +7dB
0x18, // +8dB
//0x19, // +9dB
0x1A, // +10dB
//0x1B, // +11dB
0x1C//,  +12dB
//0x1D, // +13dB
//0x1E, // +14dB
//0x1F, // +15dB
};

static const unsigned char BalFadTable[]=
{
	0x00, // +0dB
	0x13, // -3dB
	0x15, // -5dB
	0x18, // -8dB
	0x1A, // -10dB
	0x1D, // -13dB
	0x1F, // -15dB
	0x22, // -18dB
	0x24, // -20dB
	0x27, // -23dB
	0x29, // -25dB
	0x2C, // -28dB
	0x7F // mute	
};

static const unsigned char EQTable[]=
{
	// Bass, Treble
	10,10,	//Classic
	10,12, 	//Pop
	12,12,	//Rock
};

/*********************************************
	Function:		AudioInit
	Description:	
	Write/Modify:	Perry.Liang
	Time:		2004-8-9- 16:31:15
*********************************************/
void AudioInit(void)
{
	PD_AMUTE=1;//PE5--push-pull output for TDA7384 mute
	PO_AMUTE=1;
	Pin_AMUTE=0;

	Pin_SACLK=1;//push pull output
	PD_SACLK=1;
	PO_SACLK=1;

	
	AudioI2CBuf[0]=y00110000;
	AudioI2CBuf[1]=y11100000;
	AudioI2CBuf[2]=y00000111;
	AudioI2CBuf[3]=y00000000;
	AudioI2CBuf[4]=y00000000;
	AudioI2CBuf[5]=y00000000;
	AudioI2CBuf[6]=y00000000;
	AudioI2CBuf[7]=y00110000;
	AudioI2CBuf[8]=y01000000;
	AudioI2CBuf[9]=y11110111;
	AudioI2CBuf[10]=y00000000;
	AudioI2CBuf[11]=y00000000;
	AudioI2CBuf[12]=y00000000;
	AudioI2CBuf[13]=y00000000;
	AudioI2CBuf[14]=y10000000;
	AudioI2CBuf[15]=y10000000;
	AudioI2CBuf[16]=y00010111;
	AudioI2CBuf[17]=y00000000;
	
	AudioVol=12;
	AudioFVol=12;
	AudioRVol=12;
	AudioBas=6;
	AudioBasFre=0;
	AudioBasQ=0;
	AudioTre=6;
	AudioTreFre=0;
	AudioMid=6;
	AudioMidFre=0;
	AudioMidQ=0;
	AudioIXBass=0;
	AudioIXBass_Bk=1;
	AudioIXBassFre=0;
	AudioSubw=13;
	AudioSubw_Bk=0;
	AudioSubwFre=0;
	AudioSubwFre_Bk=1;
	AudioBal=12;
	AudioFad=12;
	TAVol=14;
	AudioFSource=AUDIO_INPUT_RADIO;
	AudioRSource=AUDIO_INPUT_RADIO;
	F_2ZONE=0;
	F_LOUD=0;
	F_SUBW=0;
	F_3DSOUND=0;
	F_MUTE=0;
	
	AudioCalc(AUDIO_ALL_VAL);
	AudioSend(AUDIO_AREA_ALL);

	AudioWorkMode=AUDIO_MODE_IDLE;
	AudioEQMode=EQ_MODE_OFF;
	
}

/*********************************************
	Function:		AudioMain
	Description:	
	Write/Modify:	Perry.Liang
	Time:		2004-8-9- 16:31:21
*********************************************/
void AudioMain(void)
{
	AudioSpectrumProc();
	AudioKey();
	AudioDisp();
	AudioProc();
	SoftChangeLoop();
}

/*********************************************
	Function:		AudioProc
	Description:	
	Write/Modify:	Perry.Liang
	Time:		2004-8-9- 16:31:28
*********************************************/
void AudioProc(void)
{

	if(AudioTimer==1)
	{
		AudioTimer=0;
		AudioWorkMode=AUDIO_MODE_IDLE;
		
		switch(System.FWorkMode.Current)
		{
			case WORKMODE_RADIO:
				//System.DispMode.Requst=DISPMODE_RADIO;
				//if(F_InTASwitch)
				if(F_InTASwitch||F_InEONTASwitch)
				{
					System.DispMode.Requst=DISPMODE_RDS;
					RDSDispMode=RDSDISP_TRAFFIC;
				}
				else if(RDS.F_PSExist)
				{
					System.DispMode.Requst=DISPMODE_RDS;
					RDSDispMode=RDSDISP_PS;
				}
				else
				{
					System.DispMode.Requst=DISPMODE_RADIO;
					RDSDispMode=RDSDISP_IDLE;
				}
				break;
			case WORKMODE_DISC:
			case WORKMODE_USB:
			case WORKMODE_SD:
				System.DispMode.Requst=DISPMODE_CD;
				break;
			case WORKMODE_CDC:
				System.DispMode.Requst=DISPMODE_CDC;
				break;
			case WORKMODE_AUX:
				System.DispMode.Requst=DISPMODE_AUX;
				break;
			case WORKMODE_PHONE:
				System.DispMode.Requst=DISPMODE_PHONE;
				break;
			case WORKMODE_STANDBY:
				System.DispMode.Requst=DISPMODE_STANDBY;
				break;
			case WORKMODE_ALIGN:
				System.DispMode.Requst=DISPMODE_ALIGN;
				break;
		}
		
	}
	
	switch(System.FWorkMode.Next)
	{
		case WORKMODE_IDLE:
			
			break;
		case WORKMODE_RADIO:
			AudioFSource=AUDIO_INPUT_RADIO;
			AudioCalc(AUDIO_SOURCE);
			AudioSend(AUDIO_AREA_FSOURCE);
			break;
		case WORKMODE_DISC:
		case WORKMODE_USB:
		case WORKMODE_SD:
			AudioFSource=AUDIO_INPUT_CD;
			AudioCalc(AUDIO_SOURCE);
			AudioSend(AUDIO_AREA_FSOURCE);
			break;
		case WORKMODE_CDC:
			AudioFSource=AUDIO_INPUT_CDC;
			AudioCalc(AUDIO_SOURCE);
			AudioSend(AUDIO_AREA_FSOURCE);
			break;
		case WORKMODE_AUX:
			AudioFSource=AUDIO_INPUT_AUX;
			AudioCalc(AUDIO_SOURCE);
			AudioSend(AUDIO_AREA_FSOURCE);
			break;
	}


}


/*********************************************
	Function:		AudioDisp
	Description:	
	Write/Modify:	Perry.Liang
	Time:		2004-8-9- 16:31:32
*********************************************/
void AudioDisp(void)
{

	if(System.DispMode.Current!=DISPMODE_AUDIO)return;
	if(!F_AudioDispReq)return;
	F_AudioDispReq=0;

	F_DISP_P=0;
	if(F_HalfSecondOut)
	{
		ShowVolBar();
		if(F_SpecOK)
		{
			F_SpecOK=0;
			ShowSpectrum();
		}
	}

	if(AudioEQMode==EQ_MODE_OFF)
		{
			F_DISP_DSP=0;
			F_DISP_CLASSIC=0;
			F_DISP_POP=0;
			F_DISP_ROCK=0;
		}
	
	switch(AudioWorkMode)
	{
		case AUDIO_MODE_IDLE:
		case AUDIO_MODE_VOL:
			DispNum[0]='V';
			DispNum[1]='O';
			DispNum[2]='L';
			DispNum[3]=' ';
			DispNum[4]=' ';
			DispNum[5]=' ';
			DispNum[6]=AudioVol/10;
			DispNum[7]=AudioVol%10;
			break;
		case AUDIO_MODE_BASS:
			DispNum[0]='B';
			DispNum[1]='A';
			DispNum[2]='S';
			DispNum[3]='S';
			DispNum[4]=' ';
			DispNum[5]=' ';
			DispNum[6]=' ';
			DispNum[7]=0;
			if(AudioBas>6)
			{
				DispNum[6]='+';
				DispNum[7]=AudioBas-6;
			}
			else if(AudioBas<6)
			{
				DispNum[6]='-';
				DispNum[7]=6-AudioBas;
			}
			break;
		case AUDIO_MODE_MID:
			DispNum[0]='M';
			DispNum[1]='I';
			DispNum[2]='D';
			DispNum[3]=' ';
			DispNum[4]=' ';
			DispNum[5]=' ';
			DispNum[6]=' ';
			DispNum[7]=0;
			if(AudioMid>6)
			{
				DispNum[6]='+';
				DispNum[7]=AudioMid-6;
			}
			else if(AudioMid<6)
			{
				DispNum[6]='-';
				DispNum[7]=6-AudioMid;
			}
			break;
		case AUDIO_MODE_TRE:
			DispNum[0]='T';
			DispNum[1]='R';
			DispNum[2]='E';
			DispNum[3]=' ';
			DispNum[4]=' ';
			DispNum[5]=' ';
			DispNum[6]=' ';
			DispNum[7]=0;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区四区在线| 91啪在线观看| 久久久久久影视| 国产一区二区三区四区五区入口| 日韩视频免费直播| 久久精品噜噜噜成人av农村| 精品少妇一区二区三区日产乱码 | 亚洲一二三专区| 欧美性一区二区| 日韩av一二三| 国产亚洲欧美一级| 91在线观看一区二区| 亚洲成人久久影院| 精品国产在天天线2019| 成人一区二区三区中文字幕| 亚洲欧美日韩成人高清在线一区| 欧美日韩精品免费| 豆国产96在线|亚洲| 亚洲成人自拍网| 久久欧美一区二区| 欧美日韩免费电影| 国产福利电影一区二区三区| 一区二区三区资源| 久久久精品免费免费| 在线观看不卡一区| 国产精品 欧美精品| 秋霞av亚洲一区二区三| 中文字幕一区三区| 精品区一区二区| 欧美精品99久久久**| 99久久久久免费精品国产| 精品亚洲国内自在自线福利| 亚洲欧洲综合另类在线| 中文字幕乱码日本亚洲一区二区| 欧美日韩国产在线观看| 97成人超碰视| 99精品偷自拍| 99精品在线观看视频| 丰满少妇在线播放bd日韩电影| 精品中文字幕一区二区| 视频一区国产视频| 日韩专区中文字幕一区二区| 夜夜揉揉日日人人青青一国产精品| 国产女主播一区| 中文字幕va一区二区三区| 精品国产乱码久久久久久夜甘婷婷| 欧美久久久久中文字幕| 91精品在线一区二区| 欧美本精品男人aⅴ天堂| 欧美一级在线免费| 久久一日本道色综合| 天天综合日日夜夜精品| 欧美videos大乳护士334| 欧美mv日韩mv国产网站app| 欧美成人一区二区三区片免费| 欧美一区二区久久| 久久亚洲精精品中文字幕早川悠里 | 国产亚洲精品超碰| 国产欧美日韩精品在线| 一区二区三区影院| 蜜臀99久久精品久久久久久软件| 久久超级碰视频| 91丝袜美腿高跟国产极品老师| 色噜噜久久综合| 精品久久久久99| 亚洲精品欧美专区| 精品亚洲porn| 色综合中文字幕| 日韩一区二区高清| 亚洲视频电影在线| 毛片一区二区三区| 成人动漫一区二区| 555夜色666亚洲国产免| 日本一二三四高清不卡| 免费久久精品视频| 日本乱人伦一区| 亚洲国产激情av| 蜜桃av一区二区三区电影| 在线观看日韩一区| 国产精品久久久久久久久免费樱桃| 亚洲大片免费看| 91麻豆国产精品久久| 国产欧美日韩另类一区| 久久国产麻豆精品| 3d动漫精品啪啪1区2区免费| 亚洲丝袜美腿综合| 99热这里都是精品| 国产精品美女久久久久aⅴ国产馆| 日韩中文字幕一区二区三区| 在线观看一区二区视频| 1000精品久久久久久久久| 成人午夜激情影院| 国产午夜精品一区二区三区嫩草| 精品综合免费视频观看| 91精品国产91综合久久蜜臀| 亚洲午夜激情网站| 欧美日韩精品综合在线| 香蕉成人伊视频在线观看| 91精品国模一区二区三区| 日韩成人午夜电影| 91麻豆精品国产| 精品夜夜嗨av一区二区三区| 精品久久久久久久久久久久久久久| 日本少妇一区二区| 26uuu色噜噜精品一区二区| 国产乱码一区二区三区| 亚洲国产精品精华液2区45| caoporen国产精品视频| 亚洲香肠在线观看| 欧美一区二区视频在线观看2022 | 亚洲精品日日夜夜| 欧美中文一区二区三区| 毛片不卡一区二区| 亚洲视频一二三区| 欧美一区二区视频免费观看| 国产专区欧美精品| 樱桃国产成人精品视频| 欧美精品一区二区三区很污很色的 | 美国欧美日韩国产在线播放| 国产婷婷色一区二区三区四区| 99综合影院在线| 石原莉奈在线亚洲二区| 国产精品灌醉下药二区| 日韩精品最新网址| 色婷婷av一区二区三区软件| 狠狠色狠狠色综合日日91app| 亚洲欧洲综合另类| 国产欧美精品区一区二区三区| 91麻豆精品久久久久蜜臀 | 欧美午夜精品理论片a级按摩| 精品一区二区三区香蕉蜜桃 | 亚洲日本成人在线观看| 日韩免费视频一区二区| 欧美调教femdomvk| eeuss鲁一区二区三区| 国产精品一区二区三区99 | 亚洲卡通动漫在线| 国产女人水真多18毛片18精品视频 | 久久www免费人成看片高清| 亚洲主播在线播放| 亚洲成人资源网| 日韩中文欧美在线| 国产精品不卡一区| 日韩美女精品在线| 国产精品不卡在线| 中文字幕一区二区三区色视频| 久久久综合网站| 国产日产欧美一区| 自拍偷拍欧美精品| 亚洲精品成a人| 亚洲gay无套男同| 免费日本视频一区| 国产一区二区三区久久久| 国产成人午夜片在线观看高清观看| 狠狠v欧美v日韩v亚洲ⅴ| 国产91露脸合集magnet| 波多野结衣的一区二区三区| 91麻豆精品视频| 欧美一区二区精品| 国产婷婷色一区二区三区四区| **性色生活片久久毛片| 日韩成人一区二区三区在线观看| 国产精品99久久久| 欧美三级乱人伦电影| 久久久久久亚洲综合影院红桃| 欧美国产禁国产网站cc| 午夜精品一区二区三区免费视频 | 久久天堂av综合合色蜜桃网| 日本一区二区久久| 蜜臀久久久久久久| 97成人超碰视| 欧美国产日韩精品免费观看| 亚洲成人综合在线| 91浏览器打开| 国产亚洲人成网站| 免费在线观看一区| 欧美影院精品一区| 亚洲视频一区在线| 亚洲图片有声小说| 亚洲色图另类专区| 强制捆绑调教一区二区| 色哟哟国产精品免费观看| 欧美一区二区三区四区在线观看| 91精品国产色综合久久不卡电影 | 老汉av免费一区二区三区| 91在线观看地址| 日韩理论在线观看| 成人黄色777网| 欧美精品一区二区三区久久久| 免费在线看一区| 欧美一区三区二区| 亚洲va欧美va人人爽| 欧洲视频一区二区| 亚洲午夜电影网| 欧美久久一二区| 日韩在线一区二区三区| 日韩一级大片在线观看| 麻豆成人久久精品二区三区红| 91精品欧美综合在线观看最新 | 高清国产一区二区三区|