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

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

?? si4702.c

?? 這段代碼是驅(qū)動SI4702收音IC
?? C
?? 第 1 頁 / 共 2 頁
字號:
#include <BasType.h>
#include <RegDefs.h>
#include <HalForMcu.h>
#include <I2c.h>
#include <SI4702.h>
#include <Api_task.h>
//#include <TM1616.h>
#include <HalForMcu.h>
#include <Timer.h>
#include <Util.h>
#include <KeyDef.h>
//#include <IIC.h>
#include <Msg.h>
#include  <PT2313.h>
#include <lcd_lib.h>
#include <TM1721.h>
#include <PlayCtrl.h>
//#include <HT1621.h>
#include <GlobalVar.h>
#include <UITimeOut.h>
#include <RTC_Ctrl.h>

extern BOOL g_bRTCInter;
extern GlobalSettings  g_Setting;
extern PDATE_TIME xdata    PSYSTIME;

UINT8 RSSI_DATA[7]={12,9,17,20,10,1,1};
UINT8 READCHAN_DATA[7]={0,0,0,0,0,0,0};
UINT8 ValueHex_Low = 0;
UINT8 ValueHex_High = 0;
UINT16 TimeCount1;
UINT16 ScandickCount=0;
UINT8 ScandickCountTemp;
UINT8 Modeval2;
UINT8 VolumeCount;
 UINT8 Vtemp;
 UINT8 VolumeCountTemp;
//UINT8  voltemp=50;
bit FristMuteFlag=FALSE;
bit FristDisMuteFlag=FALSE;
bit RadioTempFlag=TRUE;
//extern UINT8 nTaskID;
//UINT8		Data_writes[12]={0x40,0x01,0x00,0x00,0x00,0x00,0xfe,0x1f,0x00,0x38,0xbc,0x04};
UINT8 Data_writes[12]={0x40,0x01,0x00,0x00,0x00,0x00,0x0c,0x10,0x00,0x38,0xbc,0x04};
#define 	SET_DSMUTE_1	Data_writes[0] |=0x80
#define 	SET_DSMUTE_0	Data_writes[0] &=0x7F

#define	SET_DMUTE_1	Data_writes[0] |=0x40
#define 	SET_DMETE_0	Data_writes[0] &=0xBF

#define	SET_MONO_1	Data_writes[0] |=0x20
#define	SET_MONO_0	Data_writes[0] &=0xDF

#define	SET_RDSM2_1	Data_writes[0] |=0x08
#define	SET_RDSM2_0	Data_writes[0] &=0xF7

#define	SET_SKMODE_1	Data_writes[0] |=0x04
#define	SET_SKMODE_0	Data_writes[0] &=0xFB

#define	SET_SEEKUP_1	Data_writes[0] |=0x02
#define	SET_SEEKUP_0	Data_writes[0] &=0xFD

#define	SET_SEEK_1		Data_writes[0] |=0x01
#define	SET_SEEK_0		Data_writes[0] &=0xFE

#define	SET_DISABLE_1	Data_writes[1] |=0x40
#define	SET_DISABLE_0	Data_writes[1] &=0xBF

#define	SET_ENABLE_1	Data_writes[1] |=0X01
#define	SET_ENABLE_0	Data_writes[1] &=0xFE

UINT8    Data_read[4];
#define STC		Data_read[0] & 0x40

#define SF_BL	Data_read[0] & 0x20

#define AFCRL	Data_read[0] & 0x10

#define ST		Data_read[0] & 0x80
#define RSSI		Data_read[1] & 0xFF
/**
功能:4702選擇I2C通訊
**/
void SI4702_Select_2wire()
	{
	sfr_USB_CONTROL &=0xFB;// i2c close
	sfr_GPIOB_DIRECTION &=0xd4;//b2,b3,b6,b7 out

	SI4702_SEN_1();
	SI4702_SDIO_0();
	SI4702_RST_0();
	SI4702_SCLK_1();
	delay_us(150);
	SI4702_RST_1();
	delay_us(70);
	SI4702_SDIO_1();
	delay_us(70);
	
	sfr_USB_CONTROL |=0x04;//I2C OPEN
	}

/**
功能:4702初始化
**/
void SI4702_Init()
	{
	//UINT8 Data_writes1[12]={0x40,0x00,0x00,0x00,0x00,0x00,0xfe,0x1f,0x00,0x00,0x81,0x00};
	UINT8 Data_writes1[12]={0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x1f,0x00,0x00,0x81,0x00};
	//UINT8 Data_writes2[8]={0x40,0x01,0x00,0x00,0x00,0x00,0xfe,0x1f};
	UINT8 Data_writes2[8]={0x40,0x01,0x00,0x00,0x00,0x00,0x3f,0x1f};

	SI4702_Select_2wire();
	
	I2C_WritePageDataEx(SI4702_adr, Data_writes1, 12, 0, FALSE);
	//IIC_SetRegs(SI4702_adr, Data_writes1, 12);
	delay_ms(200);
	delay_ms(200);
	FeedWDT(250, 30);
	delay_ms(200);
	delay_ms(200);
	delay_ms(200);
	//FeedWDT(100, 50);
	delay_ms(200);
	delay_ms(200);
	FeedWDT(250, 30);
	I2C_WritePageDataEx(SI4702_adr, Data_writes2, 8, 0, FALSE);
	//IIC_SetRegs(SI4702_adr, Data_writes2,8);
	delay_ms(200);
	delay_ms(200);
	//Data_writes[12]={0x40,0x01,0x00,0x00,0x00,0x00,0x0c,0x1f,0x00,0x38,0xbc,0x04};
	SET_DISABLE_0;
	SET_ENABLE_1;
	//FeedWDT(100, 50);
	//IIC_SetRegs(SI4702_adr, Data_writes, 12);
	I2C_WritePageDataEx(SI4702_adr, Data_writes, 12, 0, FALSE);
	delay_ms(200);
	delay_ms(200);
	}

void SI4702_SetCurFreq(UINT16 Freq)
	{
	UINT16 Freq_temp;
	g_Setting.GlobalFLAG.DispTimeFlag=0;
	//CloseWDT();
	//delay_ms(1);
	//Hal_DisableAllInts();
	if(Freq>Freq_US_max)
		Freq=Freq_US_min;
	if(Freq<Freq_US_min)
		Freq=Freq_US_min;
	Freq_temp=(Freq-Freq_US_min)/STep_100k;
	
	//Data_writes[2] &=0x7F;//TUNE=0
	//I2C_WritePageDataEx(SI4702_adr, Data_writes, 12, 0, FALSE);
	ValueHex_Low = Freq_temp & 0xff;
	Freq_temp >>= 8;
	ValueHex_High = Freq_temp & 0xff;
	
	
	Data_writes[3] = ValueHex_Low;
	//Data_writes[2] |= 0x80;//TUNE=1 
	//Data_writes[2] |= ValueHex_High;

	//I2C_WritePageDataEx(SI4702_adr, Data_writes, 12, 0, FALSE);
	//delay_ms(200);
	Data_writes[2] |= 0x80;//TUNE=1 
	I2C_WritePageDataEx(SI4702_adr, Data_writes, 12, 0, FALSE);
	//IIC_SetRegs(SI4702_adr, Data_writes, 12);
	delay_ms(600);
	
	Data_writes[2] &=0x7F;//TUNE=0
	//Data_writes[3]=0;
	I2C_WritePageDataEx(SI4702_adr, Data_writes, 12, 0, FALSE);
	//IIC_SetRegs(SI4702_adr, Data_writes, 12);
		delay_ms(200);
		SI4702_Read();

	//while(STC){
	//	SI4702_Read();
	Si4702_WriteChan(7);//每改變一次就村一次
		delay_ms(200);
	//	}
		
	//Hal_EnableAllInts();
	//IintWDT();
	//FeedWDT(100, 100);
	}

void SI4702_ChangeCurFreq(UINT8 Direct)
	{
	if(Direct == Direction_UP)	/*向上搜臺*/
	g_Setting.Globalsystem1.g_CurFreq += STep_100k;
	 if(Direct == Direction_Down)					/*向下搜臺*/
		g_Setting.Globalsystem1.g_CurFreq -= STep_100k;

		if(g_Setting.Globalsystem1.g_CurFreq > Freq_US_max)
			g_Setting.Globalsystem1.g_CurFreq = Freq_US_min;
		if(g_Setting.Globalsystem1.g_CurFreq < Freq_US_min)
			g_Setting.Globalsystem1.g_CurFreq = Freq_US_max;

	SI4702_SetCurFreq(g_Setting.Globalsystem1.g_CurFreq);
	}

void SI4702_Read()
	{
	I2C_ReadPageDataEx(SI4702_adr, Data_read, 4, 0, FALSE);
	//IIC_GetRegs(SI4702_adr, Data_read, 4);
	delay_ms(10);
	}
bit SI4702_AutoChangeFreq(UINT8 Direct)
	{
	#define IIC_TRY_TIMES	500
	MSG		keymsg2;
    	UINT16 ix=0;
	UINT16 TempFreq;
	UINT8 StoreSF_BL,StoreSTC;
	bit ChangeOK=FALSE;
	//Hal_DisableAllInts();
	g_Setting.GlobalFLAG.DispTimeFlag=0;
	if(g_Setting.Globalsystem1.g_CurFreq>Freq_US_max  || g_Setting.Globalsystem1.g_CurFreq<Freq_US_min)
		{
		g_Setting.Globalsystem1.g_CurFreq=Freq_US_min;
		SI4702_SetCurFreq(g_Setting.Globalsystem1.g_CurFreq);
		}
	TempFreq=g_Setting.Globalsystem1.g_CurFreq;
	Mute_Enable();
	while(1)
		{
		//FeedWDT(250, 20);
		Data_writes[0] |=0x04;//SET_SKMODE_1;
		Data_writes[0] |=0x01;//SET_SEEK_1;
		if(Direct)
			SET_SEEKUP_1;
		else
			SET_SEEKUP_0;
		delay_ms(20);
		//DelayInMs(200);
		I2C_WritePageDataEx(SI4702_adr, Data_writes, 2, 0, FALSE);
		//IIC_SetRegs(SI4702_adr, Data_writes, 2);
		delay_ms(40);
		//IIC_GetRegs(SI4702_adr, Data_read, 4);
		I2C_ReadPageDataEx(SI4702_adr, Data_read, 4, 0, FALSE);
		StoreSTC=Data_read[0] & 0x40;
		StoreSF_BL=Data_read[0] & 0x20;
		g_Setting.Globalsystem1.g_CurFreq=Data_read[3]+875;
		//delay_ms(200);
		g_Setting.Globalsystem1.Dispstatus_fm=disp_Freq;
		UI_FM(g_Setting.Globalsystem1.Dispstatus_fm);
		//TM1616_Display();
		if(StoreSTC)
			{
			SET_SEEK_0;
			I2C_WritePageDataEx(SI4702_adr, Data_writes, 2, 0, FALSE);
			//IIC_SetRegs(SI4702_adr, Data_writes, 2);
			g_Setting.Globalsystem1.Dispstatus_fm=disp_Freq;
			if(StoreSF_BL==0 )
				{
				SET_SEEK_0;
				I2C_WritePageDataEx(SI4702_adr, Data_writes, 2, 0, FALSE);
				//IIC_SetRegs(SI4702_adr, Data_writes, 2);
				ChangeOK=TRUE;
				}
			}
		
		delay_ms(100);
		//delay_ms(200);
		//FeedWDT(100, 50);
		delay_ms(100);
		//delay_ms(200);
		
		keymsg2=GetMessage();
	
			switch(keymsg2)
				{
				case KEY_PREV:
					
					//	SI4702_ChangeCurFreq(1);
						ChangeOK=TRUE;
					break;
			
				case KEY_NEXT:
				
					ChangeOK=TRUE;
					break;
				default:
					break;
					}
		if ( (ChangeOK==1)|| (ix>IIC_TRY_TIMES)) //條件成立或超時退出
			{
			SET_SEEK_0;
			I2C_WritePageDataEx(SI4702_adr, Data_writes, 2, 0, FALSE);
			//IIC_SetRegs(SI4702_adr, Data_writes, 2);
			g_Setting.Globalsystem1.Dispstatus_fm=disp_Freq;
			//TM1616_Display();
			Si4702_WriteChan(7);
			Mute_Disable();
			return TRUE;
			}
		else
			ix++;

		//delay_ms(200);
		}
	
	}
bit SI4702_Scan()
	{
	#define IIC_TRY_TIMES	500
	MSG		keymsg2;
    	UINT16 ix=0;
	UINT8 COUNTTEMP;
//	UINT16 TempFreq;
	UINT8 StoreSF_BL,StoreSTC;
	bit ChangeOK1=FALSE;
	g_Setting.GlobalFLAG.DispTimeFlag=0;
	for(COUNTTEMP=0;COUNTTEMP<7;COUNTTEMP++)
		{
		RSSI_DATA[COUNTTEMP]=1;
		READCHAN_DATA[COUNTTEMP]=0;
		}
	//TempFreq=SYS.g_CurFreq;
	BBPCALL();
	Mute_Enable();
	SI4702_SetCurFreq(875);
	while(1)
		{
		FeedWDT(250, 20);
		//SysIdleProc();
		SET_SKMODE_1;
		SET_SEEK_1;
		SET_SEEKUP_1;
		//Data_writes[3]=0;
		//DelayInMs(200);
		//IIC_SetRegs(SI4702_adr, Data_writes, 2);
		I2C_WritePageDataEx(SI4702_adr, Data_writes, 2, 0, FALSE);
		delay_ms(50);
	
		//IIC_GetRegs(SI4702_adr, Data_read, 4);
		I2C_ReadPageDataEx(SI4702_adr, Data_read, 4, 0, FALSE);
		StoreSTC=Data_read[0] & 0x40;
		StoreSF_BL=Data_read[0] & 0x20;
		
		g_Setting.Globalsystem1.g_CurFreq=Data_read[3]+875;

		g_Setting.Globalsystem1.Dispstatus_fm=disp_Freq;
		UI_FM(g_Setting.Globalsystem1.Dispstatus_fm);
		if(StoreSTC)
			{
			SET_SEEK_0;
			I2C_WritePageDataEx(SI4702_adr, Data_writes, 2, 0, FALSE);
			//IIC_SetRegs(SI4702_adr, Data_writes, 2);
			g_Setting.Globalsystem1.Dispstatus_fm=disp_Freq;

			if(StoreSF_BL==0 )
				{
			
				SET_SEEK_0;
				I2C_WritePageDataEx(SI4702_adr, Data_writes, 2, 0, FALSE);
				//IIC_SetRegs(SI4702_adr, Data_writes, 2);
				RSSI_DATA[5]=RSSI;
				READCHAN_DATA[5]=Data_read[3];
				BubbleSort(RSSI_DATA, READCHAN_DATA, 6);
				for(COUNTTEMP=0;COUNTTEMP<6;COUNTTEMP++)
					{
					if(g_Setting.Globalsystem1.RadioBand==1)
						{
					I2C_Write_8bitROG(EEprom_Adr, EEprom_band1+(COUNTTEMP*2), READCHAN_DATA[COUNTTEMP]);
						}
					if(g_Setting.Globalsystem1.RadioBand==2)
						{
					I2C_Write_8bitROG(EEprom_Adr, EEprom_band2+(COUNTTEMP*2), READCHAN_DATA[COUNTTEMP]);
						}
					if(g_Setting.Globalsystem1.RadioBand==3)
						{
					I2C_Write_8bitROG(EEprom_Adr, EEprom_band3+(COUNTTEMP*2), READCHAN_DATA[COUNTTEMP]);
						}
					delay_ms(20);
					}
				}
			}
		
		delay_ms(200);
		keymsg2=GetMessage();
		
			switch(keymsg2)
				{
				case KEY_NEXT:	
					ChangeOK1=TRUE;
					break;
			
				case KEY_PREV:

					ChangeOK1=TRUE;
					break;
				case KEY_AS_PS:
					ChangeOK1=TRUE;
					break;
				default:
					break;
				}
		
		if(g_Setting.Globalsystem1.g_CurFreq==875)
			ChangeOK1=1;
		if ( (ChangeOK1==1)|| (ix>IIC_TRY_TIMES)) //條件成立或超時退出
			{
			SET_SEEK_0;
		I2C_WritePageDataEx(SI4702_adr, Data_writes, 2, 0, FALSE);
			//IIC_SetRegs(SI4702_adr, Data_writes, 2);
			g_Setting.Globalsystem1.Dispstatus_fm=disp_Freq;
			Get_Chan(0);
			g_Setting.GlobalFLAG.MuteFlag=0;
			Mute_Disable();
			return TRUE;
			}
		else
			ix++;
		}
	
	}

void Get_Chan(UINT8 chan)
	{
	UINT8 CHAN_TEMP;
	UINT8 Temp_EEprom1,Temp_EEprom2;
	if(g_Setting.Globalsystem1.RadioBand==1)
		{
		Temp_EEprom1=EEprom_band1_CurFreq;
		Temp_EEprom2=EEprom_band1;
		}
	if(g_Setting.Globalsystem1.RadioBand==2)
		{
		Temp_EEprom1=EEprom_band2_CurFreq;
		Temp_EEprom2=EEprom_band2;
		}
	if(g_Setting.Globalsystem1.RadioBand==3)
		{
		Temp_EEprom1=EEprom_band3_CurFreq;
		Temp_EEprom2=EEprom_band3;
		}
	if(chan==7)
		CHAN_TEMP=I2C_Read_8bitROG(EEprom_Adr, Temp_EEprom1);
	else
		CHAN_TEMP=I2C_Read_8bitROG(EEprom_Adr, Temp_EEprom2+(chan*2));
		
	g_Setting.Globalsystem1.g_CurFreq=CHAN_TEMP+875;
	if(g_Setting.Globalsystem1.g_CurFreq>1080)
		g_Setting.Globalsystem1.g_CurFreq=875;
	if(g_Setting.Globalsystem1.g_CurFreq<875)
		g_Setting.Globalsystem1.g_CurFreq=875;
	SI4702_SetCurFreq(g_Setting.Globalsystem1.g_CurFreq);
	}
void BubbleSort(UINT8 *pData1,UINT8 *pData2,UINT8 Count) 
	{ 
	UINT8 iTemp1,iTemp2; 
	UINT8 i,J;
	for( i=1;i<Count;i++) 
	{ 
	for(J=Count-1;J>=i;J--) 
		{ 
		if(pData1[J]>pData1[J-1]) 
			{ 
			iTemp1 = pData1[J-1]; 
			pData1[J-1] = pData1[J]; 
			pData1[J] = iTemp1; 
			
			iTemp2=pData2[J-1];
			pData2[J-1]=pData2[J];
			pData2[J]=iTemp2;
			} 
		} 
	} 
} 
/**
void SI4702_close()
	{
	SET_DISABLE_1;
	SET_ENABLE_0;
	I2C_WritePageDataEx(SI4702_adr, Data_writes, 12, 0, FALSE);
	}
**/
UINT8 FM_TaskEntrance(void)
	{
	MSG		CurMsg;
	//SYS.DispTimeFlag=0;
	//SYS.Dispstatus=disp_Freq;
	SI4702_Init();
	//SI4702_SetCurFreq(SYS.g_CurFreq);
	if(g_Setting.GlobalFLAG.EEPROMOKFlag)
		g_Setting.Globalsystem1.RadioBand=I2C_Read_8bitROG(EEprom_Adr, EEprom_RadioBand);
	else
		g_Setting.Globalsystem1.RadioBand=1;
	//Get_Chan(7);
	/**
	delay_ms(100);
	InitPt2313(0x46);
	delay_ms(50);
	**/
	SelectINChannel(g_Setting.Globalsystem1.nTaskID);//選擇聲道
	//Mute_Disable();
	//SetVolume(SYS.vol_val);
	Get_Chan(7);
	while(1)
	{
	sfr_GPIOB_DIRECTION |=0x02;  
	delay_us(2);
		if((sfr_GPIOB_DATA & 0x02))
			{
			Player_SendCmd(MPI_STOP,0);
			DelayInMs(200);	
			Hal_StopTimer1();
			RTC_PrePowerDown();
			g_bRTCInter = FALSE;

			RTC_PowerDown();
			do{ 
				//g_bRTCInter = FALSE;
				//if(!(sfr_GPIOB_DATA & 0x02))
				//	{
   				//	g_bRTCInter = TRUE;                 
				//	}
			   	//PowerDown后由RTC喚醒時需要處理的事情可以在此處理 
				RTC_GetTime(PSYSTIME);
				//RTC喚醒處理完該處理的事之后繼續(xù)PowerDown
				RTC_PowerDown();
			}while(!g_bRTCInter);
			//非RTC中斷喚醒,退出Powerdown
			RTC_PowerResume();
			((void (code *)(void))0x0000)();
			}
	Progressively_Volume(g_Setting.Globalsystem1.vol_val);
	//循環(huán)消息處理
	FeedWDT(250, 20);
	/**
	if(SYS.WritePositionFlag)
		{
		//Write_Position();
		Write_check_byte();
		SYS.WritePositionFlag=0;
		}
		**/
		/**
	if(g_Setting.GlobalFLAG.ACConFLAG==0)
			{
			g_Setting.Globalsystem1.nTaskID=TASK_STANDBY;
			return g_Setting.Globalsystem1.nTaskID;
			}
			**/
	ScandickCountTemp=5;
	if((++ ScandickCount)%ScandickCountTemp== 0)
		{
		ScanDisk();
		ScandickCount=1;
		}
	if(g_Setting.GlobalFLAG.USB_InFlag)
		g_Setting.GlobalICON.Icon_usb=1;
	else
		g_Setting.GlobalICON.Icon_usb=0;
	if(g_Setting.GlobalFLAG.SD_InFlag)
		g_Setting.GlobalICON.Icon_SD=1;
	else
		g_Setting.GlobalICON.Icon_SD=0;
	if(g_Setting.GlobalFLAG.MediaPluINFlag)
		{
		Si4702_WriteChan(7);
		g_Setting.GlobalFLAG.MediaPluINFlag=0;
		g_Setting.Globalsystem1.nTaskID=TASK_MUSIC;
		return g_Setting.Globalsystem1.nTaskID;
		}
	CurMsg = GetMessage();
	
	switch(CurMsg)
			{
				case KEY_CH:
					if(g_Setting.GlobalFLAG.NOMediaFlag==0)
						{
						Si4702_WriteChan(7);
						g_Setting.Globalsystem1.nTaskID=TASK_MUSIC;
						return g_Setting.Globalsystem1.nTaskID;
						}
					break;
				case KEY_PWR_LONG:
					if(sfr_GPIOA_DATA & 0x01)
						{
						SYSPowerDown();
						g_Setting.Globalsystem1.nTaskID=TASK_STANDBY;
						return g_Setting.Globalsystem1.nTaskID;
						}
						break;
				case KEY_AS_PS:
						SI4702_Scan();
					break;
				case KEY_SCAN:

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一本二本av| 色综合欧美在线| 色综合久久久久综合体| 国产欧美日韩另类一区| 国产**成人网毛片九色| 欧美日韩一区三区| 国产精品超碰97尤物18| 99久久久久免费精品国产| 亚洲精品视频免费看| 成人动漫一区二区三区| 日本一区二区成人在线| 色婷婷综合久久久| 天天综合天天综合色| 色婷婷狠狠综合| 一区二区三区四区av| 精品视频一区二区三区免费| 精品一区二区日韩| 精品福利一区二区三区| 精品综合免费视频观看| 欧美激情一区二区在线| 成人的网站免费观看| 午夜精品福利一区二区蜜股av | 欧美一级在线视频| 激情六月婷婷综合| 一区二区三区 在线观看视频| 不卡欧美aaaaa| 欧美一区二区不卡视频| 91小视频在线观看| 亚洲专区一二三| 无码av免费一区二区三区试看| 欧美亚洲一区二区在线观看| 一级做a爱片久久| 国产精品全国免费观看高清 | 欧美国产精品劲爆| 精品中文字幕一区二区| 欧美日本视频在线| 黄页网站大全一区二区| 国产精品久久看| 日本韩国精品在线| 青青草国产成人av片免费| 欧美亚洲精品一区| 日韩精品1区2区3区| 久久久久久亚洲综合| 欧美精品三级日韩久久| av高清不卡在线| 国产欧美日韩综合精品一区二区| 国产精品视频在线看| 成人av电影在线观看| 亚洲国产精品久久久久秋霞影院 | 日韩一区国产二区欧美三区| 色av综合在线| 91久久久免费一区二区| 99麻豆久久久国产精品免费优播| 精品午夜久久福利影院| 捆绑调教一区二区三区| 亚洲免费在线播放| 国产精品不卡一区| 视频一区二区欧美| 日韩一级欧美一级| 久久亚洲综合色一区二区三区 | 免费成人性网站| 久久精品国产色蜜蜜麻豆| 国产专区综合网| 国产a级毛片一区| 成人天堂资源www在线| 99精品黄色片免费大全| 99久久99精品久久久久久| 欧美性生活影院| 欧美日韩国产片| 精品久久久久久最新网址| 欧美激情一区二区三区全黄| 久久久久久久网| 欧美日韩国产综合一区二区三区| 欧美综合一区二区| 欧美日韩黄色影视| 欧美丰满嫩嫩电影| 午夜精品福利在线| 欧美精品日韩一本| 91麻豆精品国产自产在线 | 久久精品99国产精品日本| 秋霞午夜av一区二区三区| 亚洲国产欧美日韩另类综合| 亚洲电影你懂得| 麻豆精品在线观看| 精品一区二区三区在线播放视频| 国产91清纯白嫩初高中在线观看 | 亚洲欧美日韩在线| 婷婷开心久久网| 国产91综合一区在线观看| 色综合激情五月| 26uuu成人网一区二区三区| 亚洲美女免费视频| 久久国产综合精品| 91小视频免费看| 欧美mv日韩mv国产网站| 中文字幕一区二区不卡| 麻豆精品一二三| 日本高清不卡aⅴ免费网站| 精品久久一区二区三区| 亚洲综合自拍偷拍| 国产福利91精品| 日韩一区二区影院| 一区二区三区在线视频播放| 国产一区欧美一区| 6080日韩午夜伦伦午夜伦| 综合久久国产九一剧情麻豆| 另类欧美日韩国产在线| 日本精品一级二级| 欧美性猛交一区二区三区精品| 久久久久高清精品| 午夜精品久久久久久久久久久| 99久久精品一区| 欧美激情在线观看视频免费| 久久99精品久久久久| 欧美日韩黄色一区二区| 一区二区三区欧美久久| 国产福利精品一区| 欧美成人伊人久久综合网| 五月婷婷欧美视频| 欧美三级欧美一级| 夜夜亚洲天天久久| 色婷婷激情综合| 亚洲美女一区二区三区| 91蝌蚪porny成人天涯| 久久精品夜色噜噜亚洲a∨| 久久久亚洲午夜电影| 亚洲小少妇裸体bbw| 色综合久久综合中文综合网| 国产精品二区一区二区aⅴ污介绍| 国产乱国产乱300精品| 欧美www视频| 久久精品久久99精品久久| 欧美三片在线视频观看| 一级精品视频在线观看宜春院| 日本丶国产丶欧美色综合| 一区二区三区波多野结衣在线观看| 成人免费看黄yyy456| 中文字幕av一区二区三区免费看| 经典三级一区二区| 欧美精品v日韩精品v韩国精品v| 亚洲成年人影院| 欧美日韩二区三区| 毛片av中文字幕一区二区| 国产日韩欧美在线一区| 成人精品免费网站| 亚洲精品亚洲人成人网| 欧美综合天天夜夜久久| 午夜欧美一区二区三区在线播放| 国产精品456露脸| ●精品国产综合乱码久久久久| 色综合久久中文综合久久97| 亚洲一区二区三区国产| 91精品国产乱| 国产精品一区二区久久精品爱涩 | 成人综合激情网| 亚洲欧美电影一区二区| 亚洲精品中文字幕在线观看| 国产成人激情av| 《视频一区视频二区| 日本道色综合久久| 日本aⅴ精品一区二区三区 | 日本一区二区三区在线不卡| 国产剧情一区二区| 亚洲欧美日韩国产手机在线| 欧美特级限制片免费在线观看| 蜜乳av一区二区| 国产精品美女久久久久久2018| 欧美日韩在线播放三区| 国产成人aaaa| 日韩中文字幕亚洲一区二区va在线 | 免费一级欧美片在线观看| 婷婷激情综合网| 欧美日韩国产美| 国产精一区二区三区| 亚洲综合色噜噜狠狠| 久久亚洲免费视频| 欧美久久久一区| 91在线免费播放| 青椒成人免费视频| 亚洲精品成人少妇| 国产性做久久久久久| 欧美日韩国产小视频在线观看| 成人性生交大片免费看视频在线| 亚洲国产精品久久人人爱蜜臀| 久久精品夜夜夜夜久久| 欧美一级夜夜爽| 在线视频观看一区| 福利一区在线观看| 精品在线播放免费| 日韩中文欧美在线| 亚洲午夜久久久| 亚洲免费大片在线观看| 欧美性三三影院| 91免费国产在线观看| 视频一区欧美日韩| 国产精品亚洲第一区在线暖暖韩国 | 欧美一区二区啪啪| 欧美亚洲图片小说| 99视频在线精品| 99在线热播精品免费|