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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? zhu1126_96.c.bak

?? 動(dòng)力環(huán)境監(jiān)控系統(tǒng) 動(dòng)力環(huán)境監(jiān)控系統(tǒng)
?? BAK
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
//修改為各自的函數(shù)
//2003.7.24,9:56
//模擬數(shù)據(jù)上傳,上層通信良好;下層通信沒(méi)做
//修改串口波特率容錯(cuò)沒(méi)做,(辦法為5分鐘沒(méi)收到數(shù)據(jù)就重新設(shè)置波特率),
//修改波特率等待數(shù)據(jù)發(fā)完才開(kāi)鎖,才進(jìn)行修改
//完成與AIDI模塊的通信,能實(shí)時(shí)上AIDI模塊的數(shù)據(jù)2003.7.31;10:59
#include"zhu_ini.h"
#include"zhu1126.h"


void Feed_watchdog()		//喂狗
{
	FeedDogFlag=0;
	_nop_();
	FeedDogFlag=1;
}

void Delay_nop0(uchar n)//n個(gè)nop延時(shí)
{
	uchar data i;
	for(i=0;i<n;i++)
	{
		_nop_();
	}
}

uchar Read_ID()		//讀ID號(hào)
{
	return(XBYTE[0x2000]);
}

void baud_select(uchar channel_s,uchar baud_s)//波特率選擇
{
	uchar data baud00,setmodem;
	uint  data dptr00;
	switch(channel_s)
	{
		case 1:
			dptr00=0xA000;
			setmodem=0x36;
			break;
		case 2:
			dptr00=0xA001;
			setmodem=0x76;
			break;
		case 3:
			dptr00=0xA002;
			setmodem=0xB6;
			break;
		default:return;
	}
	switch(baud_s)
	{
		case 1:
			baud00=96;
			break;	//1200
		case 2:
			baud00=48;
			break;	//2400
		case 3:
			baud00=24;
			break;	//4800
		case 4:
			baud00=12;
			break;	//9600
		case 5:
			baud00=6;
			break;	//19200
		case 6:
			baud00=3;
			break; //38400
		default:return;
	}
	XBYTE[0xA003]=setmodem;		//計(jì)數(shù)器方式設(shè)置
	XBYTE[dptr00]=baud00;		//設(shè)置波特率
	XBYTE[dptr00]=0;		//高八位
}
void hex2asc0(uchar * asc2char,uchar chChar)
{
	uchar data hByte,lByte;
	hByte=( chChar & 0xF0 )>>4;
	lByte=( chChar & 0x0F );
	if(hByte>=0 && hByte<10)
	{
		*asc2char++ = hByte + 48;
	}
	else if (hByte>9 && hByte<16)
	{
		*asc2char++ = hByte + 55;
	}

	if(lByte>=0 && lByte<10)
	{
		*asc2char++ = lByte + 48;
	}
	else if (lByte>9 && lByte<16)
	{
		*asc2char++ = lByte + 55;
	}
}

void hex2asc1(uchar * asc2char,uint chInt)
{
	uchar data hhByte,hlByte,lhByte,llByte;
	hhByte=( chInt & 0xF000 )>>12;
	hlByte=( chInt & 0x0F00 )>>8;
	lhByte=( chInt & 0x00F0 )>>4;
	llByte=( chInt & 0x000F );
	if(hhByte>=0 && hhByte<10)
	{
		*asc2char++ = hhByte + 48;
	}
	else if (hhByte>9 && hhByte<16)
	{
		*asc2char++ = hhByte + 55;
	}

	if(hlByte>=0 && hlByte<10)
	{
		*asc2char++ = hlByte + 48;
	}
	else if (hlByte>9 && hlByte<16)
	{
		*asc2char++ = hlByte + 55;
	}

	if(lhByte>=0 && lhByte<10)
	{
		*asc2char++ = lhByte + 48;
	}
	else if (lhByte>9 && lhByte<16)
	{
		*asc2char++ = lhByte + 55;
	}

	if(llByte>=0 && llByte<10)
	{
		*asc2char++ = llByte + 48;
	}
	else if (llByte>9 && llByte<16)
	{
		*asc2char++ = llByte + 55;
	}
}

void InterruptInt0() interrupt 0 using 1	//外部中斷0
{
	uchar data state,ReceByte;
	bit tempFlag0,tempFlag1;
	tempFlag1 = RamRom_Convert;
	tempFlag0 = RamIO_Convert;		//保護(hù)地址狀態(tài)
	RamRom_Convert=1;			//128RAM
	RamIO_Convert=1;			//切換RAM與端口
	state=XBYTE[0x4001];			//port1c;
	if( state & 2 )				//接收狀態(tài)
	{
		ReceByte = XBYTE[0x4000];
		if( ReceCount1 >= MaxRece1 )
		{
			ReceCount1 = 0;		//接收計(jì)數(shù)器循環(huán)
		}
		else if( ReceByte != 13 )	//'\r'=13
		{
			ReceSbuf1[ReceCount1++]=ReceByte;
			led2Flag=0;		//正在接收點(diǎn)亮通信燈
		}
		else
		{
			ReceSbuf1[ReceCount1++]=ReceByte;
			ReceEndFlag1=1;		//收到一包數(shù)據(jù)
		}
	}
//數(shù)據(jù)接收
	else if( (state & 1) && SendingFlag1 )	//發(fā)送狀態(tài)
	{
		NoReceFlag = 0;			//沒(méi)有發(fā)送標(biāo)準(zhǔn)位置一(有發(fā)送)
		bNeedSend1 = 0;			//啟動(dòng)發(fā)送標(biāo)志位清零
		if ( SendCount1 >= MaxSend1 )	//關(guān)閉發(fā)送,越界不發(fā)送
		{
			SendingFlag1 = 0;	//發(fā)完一包數(shù)據(jù)
			#ifdef	OpenEn
			SendEn&=0xFD;		//模擬開(kāi)關(guān)不切換
			#else
			for(state=0;state<100;state++)
			{
				_nop_();
			}	//關(guān)閉發(fā)送中斷使能,關(guān)閉模擬開(kāi)關(guān)
			SendEn&=0xF9;	//D5:繼電器控制位,D3:發(fā)送進(jìn)外部中斷,D2:模擬開(kāi)關(guān),D1:發(fā)送進(jìn)外部中斷0
			#endif
			XBYTE[0xE000]=SendEn;
		}
		else if( SendSbuf1[SendCount1] != 10 )	//'\n'=10
		{
			XBYTE[0x4000]=SendSbuf1[SendCount1++];
			SendingFlag1=1;	//正在發(fā)送數(shù)據(jù)
			led2Flag=0;	//正在發(fā)送點(diǎn)亮通信燈
		}
		else		//
		{
			SendingFlag1 = 0;	//發(fā)完一包數(shù)據(jù)
			#ifdef	OpenEn
			SendEn&=0xFD;	//模擬開(kāi)關(guān)不切換
			#else
			for(state=0;state<100;state++)
			{
				_nop_();
			}	//關(guān)閉發(fā)送中斷使能,關(guān)閉模擬開(kāi)關(guān)
			SendEn&=0xF9;	//D5:繼電器控制位,D3:發(fā)送進(jìn)外部中斷,D2:模擬開(kāi)關(guān),D1:發(fā)送進(jìn)外部中斷0
			#endif
			XBYTE[0xE000]=SendEn;
		}
	}
	ledled=AddLed;		//更換指示燈
	RamRom_Convert= tempFlag1;
	RamIO_Convert = tempFlag0;	//恢復(fù)地址狀態(tài)
}

void InterruptInt1() interrupt 2 using 1	//外部中斷1
{
	uchar data state,ReceByte;
	bit tempFlag0,tempFlag1;
	tempFlag1 = RamRom_Convert;
	tempFlag0 = RamIO_Convert;		//保護(hù)地址狀態(tài)
	RamRom_Convert=1;			//128RAM
	RamIO_Convert=1;	//切換RAM與端口
	state=XBYTE[0x6001];	//port1c;
	if(state&2)		//接收狀態(tài)
	{
		ReceByte=XBYTE[0x6000];
		if( ReceCount2 >= MaxRece2 )
		{
			ReceCount2 = 0;		//接收計(jì)數(shù)器循環(huán)
		}
		else if( ReceByte != 13 )	//'\r'=13
		{
			ReceSbuf2[ReceCount2++] = ReceByte;
			led2Flag = 0;		//正在接收點(diǎn)亮通信燈
		}
		else
		{
			ReceSbuf2[ReceCount2++]=ReceByte;
			ReceEndFlag2=1;		//收到一包數(shù)據(jù)
		}
	}
	else if( state & 1 &&SendingFlag2 )	//發(fā)送狀態(tài)
	{
		NoReceFlag = 0;			//沒(méi)有發(fā)送標(biāo)志位置一(有發(fā)送)
		bNeedSend2 = 0;			//啟動(dòng)發(fā)送標(biāo)志位清零
		if ( SendCount2 >= MaxSend2 )
		{
			SendCount2 = 0;
			SendingFlag2=0;		//發(fā)完一包數(shù)據(jù)
			#ifdef	OpenEn
			SendEn&=0xDF;		//繼電器不切換
			#else
			for(state=0;state<100;state++)
			{
				_nop_();
				_nop_();
			}	//關(guān)閉發(fā)送中斷使能,關(guān)閉模擬開(kāi)關(guān)
			SendEn&=0xD7;	//D5:繼電器控制位,D3:發(fā)送進(jìn)外部中斷,D2:模擬開(kāi)關(guān),D1:發(fā)送進(jìn)外部中斷0
			#endif
			XBYTE[0xE000]=SendEn;
		}
		else if( SendSbuf2[SendCount2] != 10 )	//'\n'=10
		{
			XBYTE[0x6000]=SendSbuf2[SendCount2++];
			SendingFlag2=1;	//正在發(fā)送數(shù)據(jù)
			led2Flag=0;	//正在發(fā)送點(diǎn)亮通信燈
		}
		else		//
		{
			SendingFlag2=0;	//發(fā)完一包數(shù)據(jù)
			#ifdef	OpenEn
			SendEn&=0xDF;	//繼電器不切換
			#else
			for(state=0;state<100;state++)
			{
				_nop_();
				_nop_();
			}	//關(guān)閉發(fā)送中斷使能,關(guān)閉模擬開(kāi)關(guān)
			SendEn&=0xD7;	//D5:繼電器控制位,D3:發(fā)送進(jìn)外部中斷,D2:模擬開(kāi)關(guān),D1:發(fā)送進(jìn)外部中斷0
			#endif
			XBYTE[0xE000]=SendEn;
		}
	}
	ledled=AddLed;		//更換指示燈
	RamRom_Convert= tempFlag1;
	RamIO_Convert = tempFlag0;	//恢復(fù)地址狀態(tài)
}

void InterruptT1() interrupt 3 using 2	//50ms定時(shí)1中斷
{
	static uchar xdata ledcount0;
	static uchar xdata ledcount1;
	static uchar xdata ledcount2;
	static uchar xdata ledcount3;
	bit tempFlag0,tempFlag1;
	tempFlag1 = RamRom_Convert;
	tempFlag0 = RamIO_Convert;		//保護(hù)地址狀態(tài)
	RamRom_Convert=1;			//128RAM
	RamIO_Convert=1;//切換RAM與端口
	TL1  = 0xFA;
	TH1  = 0x3C;
	if( lockFlagDn )		//要求延時(shí),枷鎖
	{
		if( DelayCount++>=DelayNms )	//延時(shí)N個(gè)50ms
		{
			DelayCount=0;
			lockFlagDn=0;
		}	//延時(shí)時(shí)間解鎖
	}
	else	DelayCount=0;
	if( ReceConFlag )		//收到控制命令閃
	{
		if(ledcount2++>4)	//控制燈閃
		{
			led3Flag=!led3Flag;
			ledcount2=0;
		}
		if(ledcount3++>15)	//閃燈八次
		{
			ledcount3=1;
			ReceConFlag=0;
		}
	}
	else	ledcount2=0;

	if(ledcount0++>4)	//運(yùn)行燈閃
	{
		led1Flag=!led1Flag;
		ledcount0=0;
	}
	if(ledcount1++>1)	//通信燈滅
	{
		led2Flag=1;
		ledcount1=0;
	}
	if(ZhengChCount++>1105*ZhengChJianGe)	//曲線歷史記錄定時(shí)*20*60
	{
		ZhengChFlag = 1;		//保存正常歷史記錄間隔為10分鐘)
		ZhengChCount = 0;		//,測(cè)試為1分鐘(768/6/24=5.3天
	}
	if( NoReceFlag == 1 )	//20分鐘沒(méi)收發(fā)送數(shù)據(jù),保存20*60*10=12000
	{			//256/2/24=5.3天,測(cè)試為2分鐘
		if ( ReBaudCount++ > 1105*DuanKaiJianGe )//56次就一分鐘了
		{
			ReBaudCount = 0;
			ReBaudFlag = 1;		//保存斷開(kāi)歷史記錄
		}
	}
	else	ReBaudCount=0;
	if(KuaiShFlag)		//測(cè)試512壞,控制燈快閃
	{
		led3Flag=!led3Flag;
		if(led3Kuai++>150)
		{
			led3Kuai=0;
			KuaiShFlag=0;
			led3Flag=1;	//閃燈后滅
		}
	}
	if(ManShFlag)		//測(cè)試512好,控制燈慢閃
	{
		led3Man++;
		if(led3Man%10==0)
		{
			led3Flag=!led3Flag;
			if(led3Man>150)
			{
				led3Man=0;
				ManShFlag=0;
				led3Flag=1;	//閃燈后滅
			}
		}
	}
	NoReceFlag = 1;	//在外部中斷函數(shù)里清零,定時(shí)器中斷函數(shù)置一;
			//不進(jìn)外部中斷發(fā)送狀態(tài),不發(fā)標(biāo)準(zhǔn)位就一直為一
	ledled=AddLed;
	RamRom_Convert= tempFlag1;
	RamIO_Convert = tempFlag0;	//恢復(fù)地址狀態(tài)
}

void InterruptS() interrupt 4 using 3	//串口中斷
{
	uchar data ReceByte;	//不對(duì)端口操作,不用保護(hù)端口狀態(tài)
	bit tempFlag0,tempFlag1;
	tempFlag1 = RamRom_Convert;
	tempFlag0 = RamIO_Convert;	//保護(hù)地址狀態(tài)
	RamRom_Convert=1;		//128RAM
	RamIO_Convert=1;		//切換RAM與端口
	if( RI )		//接收狀態(tài)
	{
		RI=0;
		ReceByte=SBUF;
		if ( ReceCount0 >= MaxRece0 )	//最大接收緩沖區(qū)
		{
			ReceCount0 = 0;
		}
		else if ( ReceByte != 0x0D )
		{
			ReceSbuf0[ReceCount0++]=ReceByte;
		}
		else
		{
			ReceSbuf0[ReceCount0++]=ReceByte;
			ReceEndFlag0=1;
		}
	}
	else		//發(fā)送狀態(tài)
	{
		TI=0;
		if ( SendCount0 >= MaxSend0 )	//發(fā)送緩沖區(qū)要越界,結(jié)束發(fā)送
		{
			SendCount0 = 0;		//發(fā)完一包數(shù)據(jù)
			TB8=1;			//發(fā)送完,以便下次發(fā)送地址
		}
		else if ( SendSbuf0[SendCount0] != 0x0A )
		{
			_nop_();
			SBUF=SendSbuf0[SendCount0++];
			TB8=0;
		}
		else
		{                             	//發(fā)完一包數(shù)據(jù)
			TB8=1;			//發(fā)送完,以便下次發(fā)送地址
		}
	}
	RamRom_Convert= tempFlag1;
	RamIO_Convert = tempFlag0;	//恢復(fù)地址狀態(tài)
}
void Analyse0()		//下行通信解析函數(shù)
{
        uint i,ReceCheck,SumCheck;//,broadid;
        uint length = 0;
	ReceEndFlag0 = 0;	//結(jié)束完標(biāo)志位清零
	lockFlagDn = 0;		//開(kāi)鎖
	for( i = 0;i < MaxRece0;i++ )		//計(jì)算包長(zhǎng)度
	{
		if( ReceSbuf0[i] == '\r')
		{
			length = i + 1;	//數(shù)據(jù)包長(zhǎng)度
			break;
		}
	}
	if( length < 10)	//無(wú)效數(shù)據(jù)包
	{
		ReceCount0=0;	//串口0接收計(jì)數(shù)器清零
		return;
	}
	SumCheck=CrcCheck( ReceSbuf0,length-5 );//crc讀取
	ReceCheck=4096 * toint(ReceSbuf0[length-5]) + 256*toint(ReceSbuf0[length-4]) + 16*toint(ReceSbuf0[length-3]) + toint(ReceSbuf0[length-2]);
	if( SumCheck != ReceCheck)	//crc校驗(yàn)
	{
		return;
	}
	ReceCheck = 4096*toint(ReceSbuf0[3]) + 256*toint(ReceSbuf0[4]) + 16*toint(ReceSbuf0[5]) + toint(ReceSbuf0[6]);
	if(ReceCheck != length-12)	//長(zhǎng)度校驗(yàn)
	{
		return;
	}
	ReceCheck = 16 * toint(ReceSbuf0[1]) + toint(ReceSbuf0[2]);
	if(ReceCheck != RTdataAns)
	{
		return;	//非實(shí)時(shí)數(shù)據(jù)響應(yīng)
	}
	switch( ReceSbuf0[0] )	//收到是那塊從模塊信息
	{
		case 0x1F://0:			//AIDI有AIDI量
			FalseTime0 = 0;		//錯(cuò)誤次數(shù)清零
			memcpy( RealTimeData+6, ReceSbuf0+11, 44 );		//AI量
			memcpy( RealTimeData+12+AIsum, ReceSbuf0+59, B00DI/2 );	//DI量
			break;
		case 0x1E://1:			//電池板只有AI量
			FalseTime1 = 0;		//錯(cuò)誤次數(shù)清零
			memcpy( RealTimeData+50, ReceSbuf0+11, B11AI*4 );		//AI量
			break;
		case 0x1D://2:			//電池板只有AI量
			FalseTime2 = 0;		//錯(cuò)誤次數(shù)清零
			memcpy( RealTimeData+178, ReceSbuf0+11, B22AI*4 );	//AI量
			break;
		case 0x1C://3:			//IP板
			FalseTime3 = 0;		//錯(cuò)誤次數(shù)清零
			memcpy( RealTimeData+306, ReceSbuf0+11, B33AI*4 );		//AI量
			memcpy( RealTimeData+12+AIsum+B00DI/2, ReceSbuf0+15+B33AI*4, B33DI/2 );	//DI量
			break;
		default :
			break;
	}
//2003.12.11;11:46 modify
	RealTimeData[0]=0x38;				//AI標(biāo)號(hào)
	RealTimeData[1]=0x30;
	hex2asc1(RealTimeData+2,75+B33AI);		//AI通道數(shù)
	RealTimeData[AIsum+6]=0x38;			//DI標(biāo)號(hào)
	RealTimeData[AIsum+7]=0x31;
	hex2asc1(RealTimeData+AIsum+8,(8+B33DI)/4);	//DI通道數(shù),壓縮

	ReceCount0=0;	//串口0接收計(jì)數(shù)器清零
}

void Analyse1()
{
	uchar data j,i,data00;
	uint  data kk,TemLen,kk0;
	uchar  readID, state, length, ReceLen, typeCom,RTclock[6];
        uint SumCheck, ReceCheck;
	ReceEndFlag1 = 0;
	if( ReceSbuf1[0] != 0x7E )		//沒(méi)有數(shù)據(jù)包頭
	{
		memset( ReceSbuf1, 0, 50 );	//串口1接收緩沖區(qū)清零
		ReceCount1 = 0;			//串口1接收計(jì)數(shù)器清零
		return;
	}
	for( i = 0;i < MaxRece1;i++ )		//計(jì)算包長(zhǎng)度
	{
		if( ReceSbuf1[i] == '\r')
		{
			length = i+1;
			break;
		}
	}
	if( length < 10 && length > 60 )	//無(wú)效數(shù)據(jù)包
	{
		memset( ReceSbuf1, 0, 40 );	//串口1接收緩沖區(qū)清零
		ReceCount1 = 0;			//串口1接收計(jì)數(shù)器清零
		return;
	}
	readID = toint( ReceSbuf1[5] ) * 16 + toint( ReceSbuf1[6] );
	if( readID != Read_ID() )			//采集箱的ID號(hào)校驗(yàn)
	{
		memset( ReceSbuf1, 0, 50 );	//串口1接收緩沖區(qū)清零
		ReceCount1 = 0;			//串口1接收計(jì)數(shù)器清零
		return;
	}
	SendSbuf1[SendCount1++] = '\r';		//結(jié)束上次發(fā)送(最好發(fā)送)
	SendSbuf1[SendCount1] = '\n';		//結(jié)束上次發(fā)送(結(jié)束發(fā)送)
	state = 0;			//返回狀態(tài)
	if( ReceSbuf1[0] != 0x7E ) state = 1;	//起始符校驗(yàn)
	if( ReceSbuf1[1] != VERh && ReceSbuf1[2] != VERl)
	{					//版本號(hào)校驗(yàn)
		state = 2;
	}
	/*
	if( ReceSbuf2[18] >0x36  ||  ReceSbuf2[19] >0x36 ||  ReceSbuf2[21] >0x36 ||  ReceSbuf2[23] >0x36 ||  ReceSbuf2[25] >0x36)
	{
		state = 10;			//日期時(shí)間錯(cuò)
		return;
	}*/
	SumCheck=CrcCheck( ReceSbuf1+1,length-6 );	//計(jì)算CRC	//接收CRC
	ReceCheck=4096 * toint( ReceSbuf1[length-5] )+256 * toint( ReceSbuf1[length-4] )+16 * toint( ReceSbuf1[length-3] )+toint( ReceSbuf1[length-2] );
	if( SumCheck != ReceCheck ) state=5;	//crc校驗(yàn)
	ReceLen = 0x10*toint( ReceSbuf1[13] ) + toint( ReceSbuf1[14] );
	if(ReceLen != length-20)    state=4;	//數(shù)據(jù)塊長(zhǎng)度
	typeCom = 16 * toint( ReceSbuf1[7] ) + toint( ReceSbuf1[8] );
	TemLen = 0;
	if(KaiJiShZhFlag)	//開(kāi)機(jī)時(shí)鐘校正
	{
		for(i = 0;i < 12;)	//更新時(shí)鐘
		{
			RTclock[i/2]=16 * toint(ReceSbuf1[15+i]) + toint(ReceSbuf1[16+i]);
                        i+=2;
		}
		setup_write();		//設(shè)置實(shí)時(shí)時(shí)鐘操作方式
		clock_write(RTclock);	//修改時(shí)鐘命令
		KaiJiShZhFlag=0;
	}
	switch( typeCom )
	{
		case ResetCom:			//系統(tǒng)復(fù)位命令
			typeCom = ResetAns;
			TemLen = 20 + 12;
			ResetAnsFlag = 1;	//復(fù)位標(biāo)志位置一
			break;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美色老头old∨ideo| 精品免费国产二区三区| eeuss鲁片一区二区三区| 国产精品18久久久久久久网站| 久久精品国产亚洲aⅴ| 美腿丝袜亚洲综合| 九色|91porny| 国产一区二区三区在线观看精品 | 欧美国产成人精品| 久久精品一级爱片| 国产日韩欧美麻豆| 国产精品午夜在线| 亚洲视频图片小说| 一区二区三区在线观看国产| 亚洲综合一区二区| 日韩精品一二三区| 麻豆精品在线播放| 国产一区二区三区久久久| 国产一区999| 成人午夜激情视频| 91福利视频久久久久| 欧美视频你懂的| 日韩午夜三级在线| 久久这里只有精品首页| 国产精品成人免费在线| 一区二区三区在线观看国产| 亚洲国产成人高清精品| 另类小说欧美激情| 国产999精品久久久久久| 91原创在线视频| 欧美久久久久免费| 久久众筹精品私拍模特| 综合婷婷亚洲小说| 婷婷亚洲久悠悠色悠在线播放| 久久电影网电视剧免费观看| 国产成人精品www牛牛影视| 91亚洲国产成人精品一区二区三| 欧美日韩一区二区在线观看| 精品国产乱码久久久久久闺蜜| 中文字幕成人av| 午夜欧美视频在线观看| 国产又粗又猛又爽又黄91精品| 99麻豆久久久国产精品免费| 欧美日韩卡一卡二| 国产亚洲一区二区三区在线观看 | 国产精品国产三级国产| 亚洲一区二区在线视频| 激情亚洲综合在线| 色婷婷综合久色| 欧美mv日韩mv国产网站app| 中文字幕永久在线不卡| 欧美a级理论片| 91在线视频免费观看| 91麻豆精品国产91久久久资源速度| 国产色综合久久| 亚洲成av人影院| 成人免费看黄yyy456| 欧美精品乱码久久久久久| 欧美国产精品一区二区三区| 午夜a成v人精品| av亚洲精华国产精华| 日韩欧美三级在线| 亚洲综合色自拍一区| 国产精品一二三四五| 欧美日韩高清一区二区三区| 国产精品私人自拍| 久久精品国产久精国产爱| 色综合久久六月婷婷中文字幕| 精品国产乱码久久久久久图片| 亚洲一区电影777| 白白色亚洲国产精品| 欧美变态口味重另类| 亚洲成人www| 色偷偷久久一区二区三区| 久久久久久久久久久久电影| 日韩一区精品视频| 色偷偷一区二区三区| 国产精品无遮挡| 韩国视频一区二区| 日韩一区二区三区视频| 亚洲五码中文字幕| 91片在线免费观看| 国产精品毛片久久久久久| 黑人精品欧美一区二区蜜桃| 88在线观看91蜜桃国自产| 亚洲免费高清视频在线| 成人免费视频caoporn| 精品1区2区在线观看| 麻豆精品国产传媒mv男同 | 久久中文字幕电影| 看片的网站亚洲| 91精品欧美综合在线观看最新| 一区二区三区在线视频播放| av毛片久久久久**hd| 日本一区二区免费在线观看视频| 狠狠色丁香久久婷婷综合丁香| 日韩三级电影网址| 欧美男人的天堂一二区| 一区二区三区在线高清| 91色porny| 亚洲美女电影在线| 91搞黄在线观看| 一区二区三区日韩精品视频| 99久久精品国产毛片| 国产精品久久久99| 99精品视频在线播放观看| 国产精品欧美一区二区三区| 成人手机电影网| 国产精品夫妻自拍| 色综合一个色综合亚洲| 亚洲天堂av一区| 91福利在线看| 午夜精品福利在线| 欧美一区二区大片| 精品亚洲成a人在线观看| 亚洲精品在线观看网站| 国产乱子轮精品视频| 国产欧美视频一区二区| 成人av影视在线观看| 亚洲视频在线一区| 欧美熟乱第一页| 免费成人在线视频观看| 久久久www成人免费无遮挡大片| 国产风韵犹存在线视精品| 国产精品卡一卡二| 91福利社在线观看| 秋霞电影网一区二区| 久久久亚洲精品一区二区三区| 成人免费视频免费观看| 亚洲自拍偷拍网站| 日韩一级成人av| 高清国产午夜精品久久久久久| 国产精品久久久久久久久搜平片| 色乱码一区二区三区88| 日韩激情视频在线观看| 久久美女高清视频| 91蝌蚪porny成人天涯| 亚洲成人免费av| 久久夜色精品国产噜噜av| 波多野结衣在线一区| 亚洲第一会所有码转帖| 日韩欧美国产综合在线一区二区三区| 国产乱码精品一品二品| 亚洲欧美日韩国产综合| 欧美一级理论片| 成人国产免费视频| 天天亚洲美女在线视频| 久久久久国产精品免费免费搜索| 91在线视频18| 蓝色福利精品导航| 国产精品美女久久久久高潮| 欧美日韩视频一区二区| 国产精品一区二区三区乱码| 亚洲影院久久精品| 久久亚洲精品国产精品紫薇| 日本久久电影网| 精品一区二区三区视频| 夜夜操天天操亚洲| 久久久久久久久免费| 欧美三级视频在线播放| 国产成人丝袜美腿| 欧美猛男gaygay网站| 国产91丝袜在线18| 免费人成在线不卡| 伊人夜夜躁av伊人久久| 久久综合九色综合欧美98| 欧美视频在线一区| 春色校园综合激情亚洲| 青青草97国产精品免费观看 | 91社区在线播放| 精品一区二区在线视频| 亚洲午夜私人影院| 国产精品你懂的| 欧美精品一区二区三区在线播放 | 国产日韩综合av| 日韩精品一区二区三区老鸭窝| 色婷婷久久久久swag精品 | 一本在线高清不卡dvd| 国产成人午夜精品影院观看视频 | 色婷婷香蕉在线一区二区| 国产乱码精品一区二区三区五月婷| 午夜精彩视频在线观看不卡| 最新中文字幕一区二区三区| 久久蜜桃av一区二区天堂| 日韩午夜中文字幕| 欧美日韩一二三区| 日本精品视频一区二区| 成人精品小蝌蚪| 国产精品亚洲视频| 精品一区二区三区免费毛片爱| 天堂精品中文字幕在线| 亚洲综合色丁香婷婷六月图片| 日本一区二区不卡视频| 久久免费看少妇高潮| 精品国产区一区| 精品噜噜噜噜久久久久久久久试看| 欧美精品123区| 欧美日本一区二区在线观看| 在线观看不卡一区| 在线观看视频一区|