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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 103.c

?? 南瑞繼保串口103源碼共享
?? C
?? 第 1 頁 / 共 3 頁
字號:
				*apack++ = 10;
				*apack++ = 1;
				*apack++ = 1;
				*apack++ =((BYTE) (sfc.sfc_val[0] >> i)&0x00000001) + 1;
				if(i == 31)
				{
					sfc.sfc_val[0] = sfc.sfc_val[1];
				}
			}
			wLen = apack - crc;
			*apack++ = Makecrc(crc,wLen);
			*apack++ = 0x16;
			wLen = apack - sbuf;
			tot_leng = wLen;
			UART_Write(uart_port,sbuf,wLen);
			return;
		}

		//檢查是否要傳送保護定值 asdu10
		if (flag == FLAG_READ_SET)
		{
			BYTE data_leng,i;

			apack = sbuf;
			*apack++ = 0x68;
			apack++;
			apack++;
			*apack++ = 0x68;
			crc = apack;
			*apack++ = 0x28;
			*apack++ = byDevAddr;
			*apack++ = 0x0a;
			*apack++ = 0x81;
			*apack++ = 0x2a;
			*apack++ = byDevAddr;
			*apack++ = 0xFE;
			*apack++ = 0xf1;
			*apack++ = 0x00;
			data_leng = 9;
			ngd = rsetbuf.set_num;
			if(ngd > 20)
			{
				ngd = ngd | 0x80;
			}
			*apack++ = (BYTE) ngd;
			data_leng++;
			i = 0;
			while (i < 20)
			{
				if (dznumber < rsetbuf.set_num)
				{
					*apack++ = 0x04;//定值組號
					data_leng++;
					*apack++ = dznumber + 1;//條目號
					data_leng++;
					*apack++ = 0x01;//描述類別
					data_leng++;
					switch (rsetbuf.set_val[dznumber].type)
					{
					case SET_T_UINT:
						*apack++ = 0x24;//ASCII碼 四方
						*apack++ = 0x02;
						*apack++ = 0x01;
						*apack++ = (BYTE) rsetbuf.set_val[dznumber].un_val.u_val;
						*apack++ = (BYTE) (rsetbuf.set_val[dznumber].un_val.u_val >> 8);
						dznumber++;
						data_leng += 5;
						break;
					case SET_T_FLOAT:
						*apack++ = 0x07;//float
						*apack++ = 0x04;
						*apack++ = 0x01;
						*apack++ = *((BYTE *)&rsetbuf.set_val[dznumber].un_val.f_val + 3);
						*apack++ = *((BYTE *)&rsetbuf.set_val[dznumber].un_val.f_val + 2);
						*apack++ = *((BYTE *)&rsetbuf.set_val[dznumber].un_val.f_val + 1);
						*apack++ = *(BYTE *)&rsetbuf.set_val[dznumber].un_val.f_val;
						dznumber++;
						data_leng += 7;
						break;
					}
					i++;
				}
				else
				{
					break;
				}
			}

			//超過20項定值分幀發		
			sbuf[1] = data_leng;
			sbuf[2] = data_leng;
			if (dznumber != rsetbuf.set_num)
			{
				sbuf[13] = (i | 0x80);
				sbuf[4] = 0x28;
			}
			else
			{
				sbuf[13] = (i | 0x00);
				sbuf[4] = 0x08;
				flag = 0;
			}
			wLen = data_leng;
			*apack++ = Makecrc(crc,wLen);
			*apack++ = 0x16;
			wLen = data_leng + 6;
			tot_leng = wLen;
			UART_Write(uart_port,sbuf,wLen);
			return;
		}
	//檢查壓板是否有變位信息
		bSFCC = INF_Search_SFCC(hand,dev_id);
		if (bSFCC == 1)
		{
			        //INF_Record_SFCC(&p_sfcc);
				INF_Get_SFCC(hand,dev_id,&p_sfcc);
				
				apack = sbuf;
				*apack++ = 0x68;
				*apack++;
				*apack++;
				*apack++ = 0x68;
				crc = apack;
				bSFCC = INF_Search_SFCC(hand,dev_id);
				if (bSFCC == 1)
				{
					*apack++ = 0x28;
				}
				else
				{
					*apack++ = 0x08;
				}
				*apack++ = byDevAddr;
				*apack++ = 0x01;
				*apack++ = 0x81;
				*apack++ = 1;
				*apack++ = byDevAddr;
				*apack++ = Get_Fun(dev_id);//Fun
				*apack++ = (BYTE)p_sfcc.e_code + SFC_BEGIN ;//條目號
				*apack++ = (BYTE)p_sfcc.e_state + 1;
				*apack++ = (BYTE)pEvent.e_date.msec;
				*apack++ = (BYTE) (pEvent.e_date.msec >> 8);
				*apack++ = pEvent.e_date.minute;
				*apack++ = pEvent.e_date.hour;
				*apack++ = 0;
				wLen = apack - crc;
				sbuf[1] = (BYTE)wLen;
				sbuf[2] = (BYTE)wLen;
				*apack++ = Makecrc(crc,wLen);
				*apack++ = 0x16;
				wLen = apack - sbuf;
				tot_leng = wLen;
				UART_Write(uart_port,sbuf,wLen);
				return;
		}	
		
		//回答無所響應數據報文
		apack = sbuf;
		*apack++ = 0x10;
		crc = apack;
		*apack++ = 0x09;
		*apack++ = byDevAddr;
		*apack++ = Makecrc(crc,2);
		*apack++ = 0x16;
		wLen = apack - sbuf;
		tot_leng = wLen;
		UART_Write(uart_port,sbuf,wLen);
		break;
	case 0x0b:
		//檢查開入量是否有變化&&檢查是否要傳送保護定植&&檢查是否有保護事件發生
		bDI = INF_Search_Dic(hand,dev_id);
		bEvent = INF_Search_Event(hand,dev_id);
		bAlarm = INF_Search_Alarm(hand,dev_id);
		bSFCC  = INF_Search_SFCC(hand,dev_id);
		if (bDI||bEvent||bAlarm||bSFCC)
		{
			//符合上述條件,置有一類數據標志
			BYTE *crc;

			apack = sbuf;
			*apack++ = 0x10;
			crc = apack;
			*apack++ = 0x29;
			*apack++ = byDevAddr;
			*apack++ = Makecrc(crc,2);
			*apack++ = 0x16;
			wLen = apack - sbuf;
			tot_leng = wLen;
			UART_Write(uart_port,sbuf,wLen);
			return;
		}

		bMeasure = INF_Search_Overline(hand,dev_id);
		dev_fun = Get_Fun(dev_id);
		//是否要傳送遙測值 ASDU50
		if(bMeasure == 1)
		{
			BYTE i;

			apack = sbuf;
			*apack++ = 0x68;
			*apack++;
			*apack++;
			*apack++ = 0x68;
			crc = apack;
			*apack++ = 0x08;
			*apack++ = byDevAddr;
			*apack++ = 0x32;   //9;
			INF_Get_Measure(dev_id,&measure);
			*apack++ = measure.ms_num; //0x0a;
			*apack++ = 2;
			*apack++ = byDevAddr;
			*apack++ = Get_Fun(dev_id);//FUN
			*apack++ = MEA_BEGIN;//inf
			//INF_Get_Measure(dev_id,&measure);
			for(i = 0;i < measure.ms_num;i++)
			{
				*apack++ = (BYTE)(measure.ms_val[i]);
				*apack++ = (BYTE)(measure.ms_val[i] >> 8);
			}
			wLen = apack - crc;
			sbuf[1] = (BYTE)wLen;
			sbuf[2] = (BYTE)wLen;
			*apack++ = Makecrc(crc,wLen);
			*apack++ = 0x16;
			wLen = apack - sbuf;
			tot_leng = wLen;
			UART_Write(uart_port,sbuf,wLen);
			return;
		}
		else
		{
			//回答無二類數據報文
			apack = sbuf;
			*apack++ = 0x10;
			crc = apack;
			*apack++ = 0x09;
			*apack++ = byDevAddr;
			*apack++ = Makecrc(crc,2);
			*apack++ = 0x16;
			wLen = apack - sbuf;
			tot_leng = wLen;
			UART_Write(uart_port,sbuf,wLen);
			break;
		}
	}
}

void ASDU05(const BYTE *rbuf,BYTE byDevAddr,BYTE uart_port)
{
	BYTE *pt;
	BYTE *crc;
	BYTE inf;
	WORD wLen;
	WORD dev_id;
	BYTE cot,control;

	pt = sbuf;
	*pt++ = 0x68;
	*pt++;
	*pt++;
	*pt++ = 0x68;
	crc = pt;
	switch(flag)
	{
	case FLAG_RESET_CU:
		control = 0x28;
		cot = 0x04;
		inf = 0x03;
		break;
	case FLAG_RESET_FCB:
		control = 0x28;
		cot = 0x03;
		inf = 0x02;
		break;
	default:
		control = 0x08;
		cot = 0x05;
		inf = 0x04;
		break;
	}
	*pt++ = control;
	*pt++ = byDevAddr;
	*pt++ = 0x05;
	*pt++ = 0x81;
	*pt++ = cot;
	*pt++ = byDevAddr;
	dev_id = Addr_to_ID(byDevAddr);
	*pt++ = Get_Fun(dev_id);
	*pt++ = inf;
	*pt++ = 0x03;
	//拷貝廠家和版本信息
	*pt++ = 'S';
	*pt++ = 'A';
	*pt++ = 'C';
	*pt++ = '1';
	*pt++ = '0';
	*pt++ = '3';
	*pt++ = '.';
	*pt++ = 'V';
	*pt++ = '2';
	*pt++ = '.';
	*pt++ = '0';
	*pt++ = '1';
	//拷貝廠家和版本信息
	wLen = pt - crc;
	sbuf[1] = (BYTE)wLen;
	sbuf[2] = (BYTE)wLen;
	*pt++ =Makecrc(crc,wLen);
	*pt++ = 0x16;
	wLen = pt - sbuf;
	tot_leng = wLen;
	UART_Write(uart_port,sbuf,wLen);
}

/*

//回答總查詢 送全遙信 單點信息0——OFF,1——ON   //ASDU40
void ASDU40(const BYTE *rbuf,BYTE byDevAddr,BYTE uart_port)
{
	BYTE *pt;
	BYTE *crc;
	BYTE count,i;
	WORD wLen;
	WORD dev_id;

	count = di.di_num + sfc.sfc_num;
	dev_id = Addr_to_ID(byDevAddr);
	flag = 0x00;
	pt = sbuf;
	*pt++ = 0x68;
	*pt++;
	*pt++;
	*pt++ = 0x68;
	crc = pt;
	*pt++ = 0x28;
	*pt++ = byDevAddr;
	*pt++ = 0x28;
	*pt++ = count;
	*pt++ = 0x09;//傳送原因
	*pt++ = byDevAddr;
	*pt++ = Get_Fun(dev_id);//FUN
	for(i = 0;i < di.di_num ;i++)
	{
		*pt++ = (BYTE) ((di.di_val[0] >> i) & 0x01);
		if(i == 31) di.di_val[0] = di.di_val[1];
	}
	for(i = 0;i < sfc.sfc_num ;i++)
	{
		*pt++ = (BYTE) ((sfc.sfc_val[0] >> i) & 0x01);
		if(i == 31) sfc.sfc_val[0] = sfc.sfc_val[1];
	}
	wLen = pt - crc;
	sbuf[1] = (BYTE)wLen;
	sbuf[2] = (BYTE)wLen;
	*pt++ = Makecrc(crc,wLen);
	*pt++ = 0x16;
	wLen = pt - sbuf;
	tot_leng = wLen;
	UART_Write(uart_port,sbuf,wLen);
}

*/
//回答總查詢
void ASDU44(const BYTE *rbuf,BYTE byDevAddr,BYTE uart_port)
{
	BYTE *pt;
	BYTE *crc;
	BYTE i;
	WORD wLen;
	WORD dev_id;

	dev_id = Addr_to_ID(byDevAddr);
	flag = FLAG_POLLING_END;
	pt = sbuf;
	*pt++ = 0x68;
	*pt++;
	*pt++;
	*pt++ = 0x68;
	crc = pt;
	*pt++ = 0x28;
	*pt++ = byDevAddr;
	*pt++ = 0x2c;
	*pt++ = 0x02;     //信息組數
	*pt++ = 0x09;     //傳送原因
	*pt++ = byDevAddr;
	*pt++ = Get_Fun(dev_id); //FUN
	*pt++ = 0xb0;            //起始inf
	*pt++ = 0x00;
	*pt++ = 0x00;
	*pt++ = ((di.di_val[0]) & 0xff);
	*pt++ = ((di.di_val[0] >>8) & 0xff);
	*pt++ = 0x00;
	*pt++ = 0x00;
	*pt++ = 0x00;            //QDS
	*pt++ = ((di.di_val[0] >>16) & 0xff);
	*pt++ = ((di.di_val[0] >>24) & 0xff);
	*pt++ = 0x00;
	*pt++ = scn;
	wLen = pt - crc;
	sbuf[1] = (BYTE)wLen;
	sbuf[2] = (BYTE)wLen;
	*pt++ = Makecrc(crc,wLen);
	*pt++ = 0x16;
	wLen = pt - sbuf;
	tot_leng = wLen;
	UART_Write(uart_port,sbuf,wLen);
	return;
}

void ASDU01(const BYTE *rbuf,BYTE byDevAddr,BYTE uart_port)
{
	BYTE *pt;
	BYTE *crc;
	WORD wLen;
	WORD dev_id;
	T_DATE tdate;
	BYTE temp;

	pt = sbuf;
	*pt++ = 0x68;
	*pt++;
	*pt++;
	*pt++ = 0x68;
	crc = pt;
	if(count == di.di_num + sfc.sfc_num - 1)
	{
		*pt++ = 8;
		flag = FLAG_POLLING_END;
		
	}
	else
	{
		*pt++ =0x28;
	}
	*pt++ = byDevAddr;
	dev_id = Addr_to_ID(byDevAddr);
	*pt++ = 0x01;
	*pt++ = 0x81;
	*pt++ = 0x09;//傳送原因
	*pt++ = byDevAddr;
	*pt++ = Get_Fun(dev_id);//FUN
	 temp = sfc.sfc_num;
	if(count <= sfc.sfc_num + di.di_num)
	{
		if(count < sfc.sfc_num)
		{
			*pt++ = SFC_BEGIN + count;//inf
			*pt++ =((BYTE) (sfc.sfc_val[0] >> count)&0x00000001) + 1;
		}
		if(count >= sfc.sfc_num)
		{
			*pt++ = DIC_BEGIN + count - sfc.sfc_num + 1;
			*pt++ =((BYTE) (di.di_val[0] >> (count-temp))&0x00000001) + 1;
		}
		if(count == 47)
		{
			di.di_val[0] = di.di_val[1];
		}
	}
	count ++;
	DEV_Get_Clock(dev_id, &tdate);
	*pt++ = (BYTE)tdate.msec;
	*pt++ = (BYTE)(tdate.msec >> 8);
	*pt++ = tdate.minute;
	*pt++ = tdate.hour;
	wLen = pt - crc;
	sbuf[1] = (BYTE)wLen;
	sbuf[2] = (BYTE)wLen;
	*pt++ = Makecrc(crc,wLen);
	*pt++ = 0x16;
	wLen = pt - sbuf;
	tot_leng = wLen;
	UART_Write(uart_port,sbuf,wLen);
}

//時鐘同步
void ASDU06(const BYTE *rbuf,BYTE byDevAddr,BYTE uart_port)
{
	const BYTE* pt;
	BYTE Msl,Msh;
	T_DATE tdate;

	pt = rbuf + 12;
	Msl = *pt++;//msl
	Msh = *pt++;//msh
	tdate.msec = MAKEWORD(Msl,Msh);
	tdate.minute = (*pt++)&0x3f;//min
	tdate.hour = (*pt++)&0x1f;//hours
	tdate.week = ((*pt)>>5)&0x07;//weeks
	tdate.day = (*pt++)&0x1f;//date
	tdate.month = (*pt++)&0x0f;//mon
	tdate.year = ((*pt++)&0x7f) + 2000;//year
	DEV_Set_Clock(SYS_IED_ANY,&tdate);
	SYS_Set_Clock(&tdate);
	return;
}

//總查詢
void ASDU07(const BYTE* rbuf,BYTE byDevAddr,BYTE uart_port)
{
	BYTE *crc;
	BYTE *pt;
	BOOL b_DI, b_SFC;
	WORD wLen;
	WORD dev_id;

	//置總查詢標志
	flag = FLAG_POLLING;
	scn = rbuf[12];
	count = 0;
	dev_id = Addr_to_ID(byDevAddr);
	b_DI = INF_Get_Di(dev_id, &di);
	b_SFC = INF_Get_SFC(dev_id, &sfc);
	pt = sbuf;
	*pt++ = 0x10;
	crc= pt;
	if((b_DI | b_SFC))
	{
		*pt++ = 0x20;
	}
	else
	{
		*pt++ = 0x00;
	}
	*pt++ = rbuf[5];
	wLen = pt - crc;
	*pt++ = Makecrc(crc,wLen);
	wLen++;
	*pt++ = 0x16;
	wLen++;
	wLen++;
	tot_leng = wLen;
	NU_Sleep(20);
	UART_Write(uart_port,sbuf,wLen);
	return;
}

//總查詢的終止
void ASDU08(const BYTE *rbuf,BYTE byDevAddr,BYTE uart_port)
{
	BYTE *pt;
	BYTE *crc;
	WORD wLen;

	pt = sbuf;
	flag = 0x00;
	*pt++ = 0x68;
	*pt++ = 0x09;
	*pt++ = 0x09;
	*pt++ = 0x68;
	crc = pt;
	*pt++ = 8;
	*pt++ = byDevAddr;
	*pt++ = 8;
	*pt++ = 0x81;
	*pt++ = 10;
	*pt++ = byDevAddr;
	*pt++ = 0xff;
	*pt++ = 0;
	*pt++ = scn;
	wLen = pt - crc;
	*pt++ = Makecrc(crc,wLen);
	*pt++ = 0x16;
	wLen = pt - sbuf;
	tot_leng = wLen;
	UART_Write(uart_port,sbuf,wLen);
	return;
}
//遙控過程
void ASDU64(const BYTE* rbuf,BYTE byDevAddr,BYTE uart_port)
{ 
	BYTE dcc;
	BYTE *crc;
	WORD wLen;
	BYTE	*apack;
	
//	dcc = rbuf[12];
	c   = rbuf[12];
	a   = rbuf[10];  //fun
	b   = rbuf[11];  //inf
	ctrl_no1 = rbuf[11];
	d   = c&0x80;
	e   = c&0x40;
	if( (d == 0x80)&&(e == 0x00))   //遙控選擇
	{
		flag = FLAG_YK_CHK;
	}
	if( (d == 0x00)&&(e == 0x00))   //遙控執行
	{
		flag = FLAG_YK_DO;
	}
	if( (d == 0x80)&&(e == 0x40))   //遙控撤消
	{
		flag = FLAG_YK_UNDO;
	}
	        apack = sbuf;
		*apack++ = 0x10;
		crc = apack;
		*apack++ = 0x20;
		*apack++ = byDevAddr;
		*apack++ = Makecrc(crc,2);
		*apack++ = 0x16;
		wLen = apack - sbuf;
		tot_leng = wLen;
		UART_Write(uart_port,sbuf,wLen);
		return;
}	        

/*		
//
void ASDU10(const BYTE* rbuf,BYTE byDevAddr,BYTE uart_port)
{
	//通用分類數據
	BYTE inf;
	BYTE ginl;
	BYTE cot;
	BYTE ginh;
	BYTE ngd;
	const BYTE *pt;
	BYTE gdd;
	BYTE i;
	BYTE ctrl_no;
	BYTE sfc_no;
	BYTE tiaomu;
	WORD sfc_state;
	WORD wLen;
	WORD set_no;
	WORD dev_id;
	BOOL b_set_no;
	BOOL b_get_set;

	dev_id =Addr_to_ID(byDevAddr);
	inf = rbuf[11];//信息序號
	ngd = rbuf[13];
	ginl = rbuf[14];//組號
	ginh = rbuf[15];//條目號
	switch(inf)
	{
	case 249://帶確認的寫條目、處理該報文、返回該報文
		switch(ginl)
		{
		case 4://定值
			tiaomu = ginh;
			b_set_no = DEV_Get_Zone(dev_id, &set_no);
			b_get_set = DEV_Get_Setting(dev_id,set_no,&wsetbuf);
			if( b_set_no == 1 && b_get_set == 1)
			{
				pt = &rbuf[17];
				gdd = *pt++;
				pt++;//數據寬度
				pt++;//數目及后續狀態
				for(i = 0;i < ngd;i ++)
				{
					switch(gdd)//gdd 通用分類數據描述:3——無符號整數,7——短實數
					{
					case 3:
						wsetbuf.set_val[tiaomu - 1].type = SET_T_UINT;
						wsetbuf.set_val[tiaomu - 1].un_val.u_val = MAKEWORD(*pt,*(pt + 1));
						pt += 3;
						tiaomu = *pt;
						pt += 2;
						gdd = *pt++;
						pt ++;
						break;
					case 7:
						wsetbuf.set_val[tiaomu - 1].type = SET_T_FLOAT;
						gen_scan_float(pt, &wsetbuf.set_val[tiaomu - 1].un_val.f_val);
						pt += 5;
						tiaomu = *pt;
						pt += 2;
						gdd = *pt++;
						pt ++;
						break;
					}
				}
				if(DEV_Check_Setting(dev_id,set_no,&wsetbuf))
				{

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品影视网| 国产成人亚洲综合a∨婷婷| 不卡电影一区二区三区| 欧美一级淫片007| 亚洲男同性恋视频| 国产不卡视频一区二区三区| 日韩一二三四区| 亚洲国产色一区| 一本色道**综合亚洲精品蜜桃冫| 久久精品夜色噜噜亚洲aⅴ| 日韩av午夜在线观看| 欧美视频在线一区二区三区| 亚洲欧洲日本在线| 风间由美性色一区二区三区| 精品国产免费一区二区三区香蕉| 亚洲高清免费观看 | 亚洲成人av资源| 99久久久久免费精品国产| 久久精品这里都是精品| 奇米一区二区三区| 欧美另类一区二区三区| 亚洲韩国一区二区三区| 日本精品一区二区三区高清| 亚洲婷婷综合久久一本伊一区| 成人一区二区三区| 国产偷国产偷亚洲高清人白洁| 免费的成人av| 日韩视频一区二区三区在线播放 | 亚洲r级在线视频| 色婷婷香蕉在线一区二区| 亚洲日本在线天堂| 99久久亚洲一区二区三区青草| 中文一区二区完整视频在线观看| 国产成人一级电影| 中文字幕精品三区| 成人免费视频网站在线观看| 欧美国产精品劲爆| 懂色av一区二区三区免费观看| 久久嫩草精品久久久精品| 国产中文一区二区三区| 欧美精品一区二区蜜臀亚洲| 国产一区二区h| 久久精品一二三| 成人一二三区视频| 亚洲欧洲韩国日本视频 | 男女男精品网站| 日韩欧美一级二级| 精品一区二区三区在线观看国产 | 国产三级精品三级| 国产成a人亚洲精品| 国产精品久久久久久妇女6080| 成人激情校园春色| 亚洲乱码国产乱码精品精可以看| 在线免费观看成人短视频| 亚洲国产一区二区三区| 欧美一区二区免费| 国产制服丝袜一区| 欧美国产精品v| 色欧美88888久久久久久影院| 亚洲一级电影视频| 欧美一区欧美二区| 国产精品伊人色| 亚洲人吸女人奶水| 欧美精选一区二区| 国内精品写真在线观看| 国产欧美在线观看一区| av男人天堂一区| 亚洲国产精品久久不卡毛片| 日韩一二三四区| 成人综合在线观看| 亚洲国产精品一区二区久久 | 欧美电视剧在线看免费| 国产91精品免费| 亚洲一区在线电影| 日韩欧美中文一区| 成人午夜激情影院| 五月天亚洲精品| 久久久精品免费免费| 91亚洲精品久久久蜜桃| 午夜精品久久久久| 久久久久国色av免费看影院| 色婷婷国产精品综合在线观看| 热久久国产精品| 国产欧美精品一区| 欧美日韩一区二区三区四区五区| 久久99精品国产91久久来源| 国产精品久久三| 欧美日韩中文字幕一区| 国产精品一区在线观看乱码| 亚洲自拍偷拍综合| 久久蜜桃一区二区| 欧美日韩久久不卡| 丁香五精品蜜臀久久久久99网站 | 中文字幕一区二区三区视频| 欧美日韩在线播放三区| 国产一区二区三区在线观看精品 | 天天免费综合色| 国产欧美精品一区aⅴ影院| 欧美日韩一区二区在线观看视频| 国产成人精品一区二区三区四区| 亚洲国产精品麻豆| 国产精品久久久久9999吃药| 91精品国产综合久久福利软件 | 色哟哟一区二区在线观看 | 亚洲一区二区视频| 国产午夜亚洲精品午夜鲁丝片 | 成人综合婷婷国产精品久久蜜臀 | 亚洲欧洲美洲综合色网| 91精品国产一区二区三区香蕉| 懂色av中文一区二区三区 | 亚洲精品久久久久久国产精华液| 精品国产污网站| 欧美人狂配大交3d怪物一区| www.亚洲精品| 国产主播一区二区三区| 午夜精品123| 亚洲久本草在线中文字幕| 国产欧美日本一区视频| 日韩欧美另类在线| 欧美日韩国产123区| 97久久精品人人澡人人爽| 国产美女主播视频一区| 免费av网站大全久久| 亚洲无线码一区二区三区| 日韩理论片一区二区| 国产色婷婷亚洲99精品小说| 日韩片之四级片| 91精品麻豆日日躁夜夜躁| 色8久久人人97超碰香蕉987| av一区二区三区在线| 国产成人免费高清| 国产一区二区美女| 久久精品国产亚洲a| 日韩国产在线观看| 香蕉av福利精品导航| 亚洲男人的天堂一区二区| 国产精品久线在线观看| 日本一区二区三区电影| 国产偷国产偷亚洲高清人白洁| 精品美女在线观看| 日韩午夜av电影| 91精品国产免费久久综合| 欧美老年两性高潮| 欧美人妇做爰xxxⅹ性高电影| 欧美三区在线观看| 欧美图区在线视频| 欧美午夜在线一二页| 欧美亚一区二区| 欧美日韩一区二区三区四区 | 日韩女优av电影| 欧美一区二区三区视频免费 | 678五月天丁香亚洲综合网| 欧美日韩一区成人| 在线播放视频一区| 欧美一级午夜免费电影| 欧美一区二区三区成人| 3d成人动漫网站| 欧美一区二区三区性视频| 制服丝袜日韩国产| 日韩一级精品视频在线观看| 欧美刺激脚交jootjob| 亚洲精品在线电影| 欧美激情一区二区三区蜜桃视频| 欧美激情一区二区三区全黄| 国产精品国产三级国产普通话三级 | 99久久精品一区二区| 色综合天天综合在线视频| 一本色道久久综合亚洲aⅴ蜜桃| 欧洲激情一区二区| 7777精品伊人久久久大香线蕉经典版下载| 欧美肥妇bbw| 欧美xxxx在线观看| 国产人妖乱国产精品人妖| 中文字幕欧美三区| 依依成人综合视频| 日韩精品五月天| 极品少妇一区二区| 丁香一区二区三区| 91久久免费观看| 666欧美在线视频| 久久综合一区二区| 成人免费小视频| 亚洲综合免费观看高清完整版 | 国产精品午夜久久| 一区二区在线观看免费视频播放| 丝袜美腿一区二区三区| 久久se这里有精品| 成人国产一区二区三区精品| 日本精品一级二级| 日韩美女视频一区二区在线观看| 久久精品无码一区二区三区| 综合分类小说区另类春色亚洲小说欧美| 一级日本不卡的影视| 久久精品国产一区二区三| 成人国产一区二区三区精品| 欧美日韩视频不卡| 国产欧美日韩久久| 亚洲电影在线免费观看| 国产综合色在线| 在线视频国内自拍亚洲视频|