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

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

?? iec103_sf.cpp

?? 四方公司103規(guī)約
?? CPP
?? 第 1 頁 / 共 5 頁
字號(hào):
	void CIEC103_SFPtl::DafaultPtlPara(void)
	{
		// 保護(hù)遙信復(fù)歸
		m_IEC103PtlPara.bOrdAfmReset = 0;	// 確認(rèn)復(fù)歸(復(fù)歸命令肯定確認(rèn)時(shí),保護(hù)信號(hào)復(fù)歸)
		m_IEC103PtlPara.bOrderReset = 0;	// 命令復(fù)歸(復(fù)歸命令毋須確認(rèn),保護(hù)信號(hào)即可復(fù)歸)

		// 信息存儲(chǔ)
		m_IEC103PtlPara.bEventVirtualYX = 0;	// 故障事項(xiàng)虛遙信

		// 通用參數(shù)	
		m_IEC103PtlPara.byInitNum = 1;		// 初始化重傳次數(shù)
		m_IEC103PtlPara.dwFrameOver = 2000;	// 幀超時(shí)間隔,ms
		m_IEC103PtlPara.dwQuery = 180;		// 總查詢間隔,s
		m_IEC103PtlPara.wTimeOver = 600;   // 校時(shí)間隔,s

		m_IEC103PtlPara.bCommAddr = 1;     // 默認(rèn)為1,才有cpu地址,否則為單元地址(即鏈路層地址)
		m_IEC103PtlPara.byBHCPUAddr = 1;   // 保護(hù)cpu地址,默認(rèn)為1
		m_IEC103PtlPara.byCKCPUAddr = 2;	// 測(cè)控cpu地址,默認(rèn)為2

		m_IEC103PtlPara.bGenSel = 1;


		//m_IEC103PtlPara.byBhResetFun = 0;
		//m_IEC103PtlPara.byBhResetInf = 0;
	}

	//通道任務(wù)監(jiān)視函數(shù)
	BOOL CIEC103_SFPtl::WatchTask(TASK* &ptask, eTaskTyp tasktyp, BYTE byNodeID)
	{
		ptask = m_pCH->GetWaitingTask(tasktyp, byNodeID);
		if (ptask) 
			return TRUE;

		return FALSE;
	}

	//規(guī)約初始化
	void CIEC103_SFPtl::InitPtl(void)
	{
		int i;
		FlashPara103 * pflashpara = NULL;
		pflashpara =  (FlashPara103*)(m_pCH->m_PtlPara);
		if(pflashpara)
			FlashParaToPtlPara(pflashpara);
		else
			DafaultPtlPara();

		m_pCH->m_ChConfig.byPtlKind=0;

		m_ePtlType = ptlSIFANG103;
		for(i=0; i<m_pCH->m_ChConfig.byIEDNum; i++)
		{
			CIED *pIED = m_pCH->m_pIED[i];
			if(pIED == NULL)
				continue;
			CreateRealRunIED(pIED);
			m_IEC103Data.m_addrtoID[pIED->m_IEDConfig.byNodeAddr] = pIED->m_IEDConfig.byNodeID;
		}
		// 規(guī)約運(yùn)行步驟 
		m_IEC103Data.m_runStep = PtlRun_PackASDU;

		m_IEC103Data.m_byCycCnt = 0;
		// 規(guī)約任務(wù)區(qū)
		memset(&m_IEC103Data.m_task103, 0, sizeof(m_IEC103Data.m_task103));
		// 服務(wù)原語
		memset(&m_IEC103Data.m_prmSend, 0, sizeof(CommPrim));
		memset(&m_IEC103Data.m_prmRecv, 0, sizeof(CommPrim));

		// 收發(fā)緩沖區(qū)
		m_IEC103Data.m_wLinkLen = 0;  
		m_IEC103Data.m_wSendNum = 0;

		// 計(jì)時(shí)器初始化
		DWORD dwRatio = GetChRatio();	
		DWORD dwDly = (3*11*1000 + dwRatio-1) / dwRatio;

		// 幀超時(shí)時(shí)間
		m_IEC103Data.m_frmOver.SetWaitSpan(m_IEC103PtlPara.dwFrameOver);

		// 幀間隔時(shí)間
		m_IEC103Data.m_frmDly33.SetWaitSpan(dwDly*300);			

		// 總召喚間隔
		m_IEC103Data.m_queryCnt.SetWaitSpan((m_IEC103PtlPara.dwQuery/2) * 1000);	
		m_IEC103Data.m_queryCnt.Start(m_nCnt);

		//校時(shí)間隔
		m_IEC103Data.m_timeover.SetWaitSpan(m_IEC103PtlPara.wTimeOver * 1000);
		m_IEC103Data.m_timeover.Start(m_nCnt);

		// 通道無數(shù)據(jù)接收監(jiān)視,
		m_IEC103Data.m_lnkSerialError = 0;
		m_IEC103Data.m_bySendCnt = 0;	
		m_IEC103Data.m_bySin = 0;		
		memset(&m_IEC103Data.m_OldCmd, 0, sizeof(m_IEC103Data.m_OldCmd));

		QueryRecvLPDU();

		m_nCnt = 0;
		SetTimer(2);

		m_bAdjustTime = false;
	}

	void CIEC103_SFPtl::OnTimer(void)
	{
		m_nCnt++;
	}

	//組幀函數(shù)
	INT CIEC103_SFPtl::Frame(BYTE* pSendBuf, INT nLen)
	{
		INT nret = 0;
		// 總召喚/召喚脈沖計(jì)數(shù)定時(shí)到
		if (m_IEC103Data.m_queryCnt.IsOverTime(m_nCnt))//調(diào)試1000
		{
			m_IEC103Data.m_queryCnt.Start(m_nCnt);
			for (int i = 0; i < CH_MAX_IED_NUM; i++)
			{
				RealRunIED *pRunIED = m_IEC103Data.m_RunIed[i];
				if(pRunIED)
				{
					pRunIED->queryFull ^= 1;	// 查詢標(biāo)志取反
					pRunIED->query = 1;
				}
			}
		}

		/*應(yīng)用層組幀
		* 1) 發(fā)送通道任務(wù)命令
		* 2) 發(fā)送普通的循環(huán)任務(wù)
		*/
		if (PtlRun_PackASDU == m_IEC103Data.m_runStep)
		{
			// 要求進(jìn)行組幀處理
			m_IEC103Data.m_wSendNum = 0;
			m_IEC103Data.m_wLinkLen = 0;

			// 初始化服務(wù)原語
			memset(&m_IEC103Data.m_prmSend, 0, sizeof(CommPrim));
			memset(&m_IEC103Data.m_prmRecv, 0, sizeof(CommPrim));

			// 通道任務(wù)檢測(cè)
			if (!PackTask()) //無任務(wù)時(shí),則執(zhí)行PackCyc();若有任務(wù),則先執(zhí)行任務(wù)
			{	
				PackCyc();				// 循環(huán)查詢?nèi)蝿?wù)
			}

			// 轉(zhuǎn)入鏈路幀發(fā)送過程
			m_IEC103Data.m_bySendCnt = 0;
			if (m_IEC103Data.m_wSendNum > 0)
				m_IEC103Data.m_runStep = PtlRun_SendLPDU;
		}

		// 輔機(jī)直接轉(zhuǎn)入鏈路接收過程中
		/*if (!lpCh->m_pDevDB->GetCcsModule( ))
		{
		pPtlData->m_runStep = PtlRun_RecvLPDU;
		QueryRecvLPDU(lpCh);
		}*/

		// 等待鏈路接收
		if (PtlRun_RecvLPDU == m_IEC103Data.m_runStep)
		{
			if (m_IEC103Data.m_frmOver.IsOverTime(m_nCnt))
			{
				m_IEC103Data.m_bySendCnt ++;
				if (m_IEC103Data.m_bySendCnt > 2)
				{
					NoLPDU();
					m_IEC103Data.m_runStep = PtlRun_PackASDU;
				}
				else
					m_IEC103Data.m_runStep = PtlRun_SendLPDU;
			}
		}

		// 鏈路層發(fā)送
		if (PtlRun_SendLPDU == m_IEC103Data.m_runStep)
		{
			// 主機(jī)發(fā)送數(shù)據(jù),輔機(jī)僅接收數(shù)據(jù)
			//if (lpCh->m_pDevDB->GetCcsModule( ))
			//{
			// 等待超時(shí)監(jiān)視 
			if(m_bAdjustTime)
			{
				m_bAdjustTime = false;
				m_IEC103Data.m_runStep = PtlRun_PackASDU;
				nret = m_IEC103Data.m_wSendNum;
			}
			else
				nret = PtlSendLPDU();
			memcpy(pSendBuf, m_IEC103Data.m_bySend, nret);
			//}
		}
		return nret;
	}

	// 鏈路層傳輸服務(wù)
	// 1. 站初始化
	// 2. 鏈路狀態(tài)控制	
	BOOL CIEC103_SFPtl::PackLinkCmm(BYTE byNodeID)
	{
		RealRunIED *pDevRun = m_IEC103Data.m_RunIed[byNodeID];
		if(!pDevRun)
			return FALSE;
		if (!pDevRun->linkQuery && !pDevRun->linkRes)
			return FALSE;

		if (pDevRun->linkRes) 
		{ 
			PackLPDU_Fix(byNodeID, ResCU_code);

			pDevRun->bCommInitFlag = TRUE;
			pDevRun->nASDU5Cnt = 0;
			pDevRun->step = eInitStart;
		}
		else if (pDevRun->linkQuery)
		{  // 鏈路狀態(tài)
			PackLPDU_Fix(byNodeID, QueryLink_code);
		}

		return TRUE;
	}

	// 固定幀長(zhǎng)鏈路數(shù)據(jù)組幀
	void CIEC103_SFPtl::PackLPDU_Fix(BYTE byNodeID, BYTE byCode)
	{
		//	if(m_IEC103Data.m_frmOver.IsOverTime(m_nCnt))
		{
			PackLPDU(byNodeID, byCode);
		}
	}

	void CIEC103_SFPtl::PackLPDU(BYTE byNodeID, BYTE code)
	{
		RealRunIED *pDevRun = m_IEC103Data.m_RunIed[byNodeID];
		if(!pDevRun)
			return;

		LinkCtrl linkCtrl;
		linkCtrl.funcode = code;
		linkCtrl.res = 0;
		linkCtrl.prm = 1;

		switch(code) 
		{
		case ResCU_code:
		case ResFcb_code:
			m_IEC103Data.m_lnkSvrCls = SendConfirm;
			linkCtrl.fcvDfc = 0;
			break;

		case NoReply_code:
			m_IEC103Data.m_lnkSvrCls = SendNoreply;
			linkCtrl.fcvDfc = 0;
			break;

		case QueryLink_code:
			m_IEC103Data.m_lnkSvrCls = RequestRespond;
			linkCtrl.fcvDfc = 0;
			break;

		case SendCon_code:
			m_IEC103Data.m_lnkSvrCls = SendConfirm;
			linkCtrl.fcvDfc = 1;
			break;

		case CallClass1_code:
		case CallClass2_code:
			m_IEC103Data.m_lnkSvrCls = RequestRespond;
			linkCtrl.fcvDfc = 1;
			break;
		default:
			break;
		}
		// 鏈路幀控制字
		linkCtrl.fcbAcd = 0;
		if (linkCtrl.fcvDfc) 
		{
			pDevRun->fcb = ~pDevRun->fcb;
			linkCtrl.fcbAcd = pDevRun->fcb;
		}

		if (0 == m_IEC103Data.m_wSendNum)
		{ // 固定幀長(zhǎng)
			LPDU_Fix_Fmt *pFmt = (LPDU_Fix_Fmt *)(m_IEC103Data.m_bySend);
			pFmt->head = 0x10;
			pFmt->ctrl = linkCtrl;
			pFmt->addr = pDevRun->pDevData->m_IEDConfig.byNodeAddr;
			pFmt->sum = pFmt->ctrl.lnkCtrl + pFmt->addr;
			pFmt->tail = 0x16;

			m_IEC103Data.m_wSendNum = sizeof(LPDU_Fix_Fmt);
		}
		else 
		{
			LPDU_Vol_Head *pHead = (LPDU_Vol_Head *)(m_IEC103Data.m_bySend);
			pHead->head1 = pHead->head2 = 0x68;
			pHead->len1 = pHead->len2 = m_IEC103Data.m_wSendNum + 2;
			pHead->ctrl = linkCtrl;
			pHead->addr = pDevRun->pDevData->m_IEDConfig.byNodeAddr;

			m_IEC103Data.m_wSendNum += sizeof(LPDU_Vol_Head);
			m_IEC103Data.m_bySend[m_IEC103Data.m_wSendNum ++] = SumMod(m_IEC103Data.m_bySend + 4, pHead->len1);
			m_IEC103Data.m_bySend[m_IEC103Data.m_wSendNum ++] = 0x16;
		}
	}

	//循環(huán)查詢組幀
	/****
	*PackCyc - 循環(huán)查詢組幀函數(shù)
	*
	*功能:
	*	1。總查詢命令
	*	2。故障錄波
	*	3。通用分類服務(wù)總查詢
	*	4。通用2級(jí)數(shù)據(jù)查詢
	*
	****/
	void CIEC103_SFPtl::PackCyc(void)
	{
		RealRunIED *pDevRun = m_IEC103Data.m_RunIed[m_IEC103Data.m_byCycCnt];
		if (pDevRun)
		{
			if (!PackLinkCmm(m_IEC103Data.m_byCycCnt)) 
			{	// 鏈路層組幀
				/*
				* 應(yīng)用層組幀
				*
				*命令優(yōu)先級(jí)
				* 1。擾動(dòng)數(shù)據(jù)傳輸
				* 2。通用分類服務(wù)總查詢
				* 3。召喚電度脈沖量
				* 4。總查詢(總召喚)
				* 5。循環(huán)查詢2級(jí)數(shù)據(jù)
				**/
				if(pDevRun->bCommInitFlag  && !pDevRun->acd)
				{
					if(eInitTime == pDevRun->step && pDevRun->nASDU5Cnt>=2)//校時(shí)
					{
						SendAdjustTime103(pDevRun->pDevData->m_IEDConfig.byNodeAddr);
					}
					else if(eInitGenAsk == pDevRun->step)//總召喚
					{
						Pack_Asdu_7(m_IEC103Data.m_byCycCnt);
					}
					else if(eInitGenGroupAsk == pDevRun->step)//通用分類服務(wù)總召喚 new
					{
						pDevRun->bGenGroupQury = TRUE;			//new
						Pack_ASDU_21(m_IEC103Data.m_byCycCnt);
					}
					else
					{
						BYTE Code = CallClass2_code;
						PackLPDU_Fix(m_IEC103Data.m_byCycCnt, Code);
					}
				}
				else if (!pDevRun->acd && pDevRun->query && !pDevRun->bCommInitFlag) 
				{
					if (!pDevRun->queryFull)
					{// 召喚電度量
						if(pDevRun->pDevData->m_IEDConfig.nDdNum > 0)
						{
							if (m_IEC103PtlPara.bGenSel)					//在規(guī)約參數(shù)中,若設(shè)置bGenSel為1,
							{												//則采用通用分類方式召喚電度量
								pDevRun->bDdQury = TRUE;
								Pack_ASDU_21(m_IEC103Data.m_byCycCnt);		//new
								//printf("電度召喚:pDevRun->query = %d\n",pDevRun->query);
							}
							else
								Pack_Asdu_88(m_IEC103Data.m_byCycCnt);
						}
					}
					else// 總召喚
					{
						Pack_Asdu_7(m_IEC103Data.m_byCycCnt);
						if (pDevRun->bQuryEnd)
						{
							pDevRun->bQuryEnd = FALSE;
							pDevRun->bGenGroupQury = TRUE;					//new
							Pack_ASDU_21(m_IEC103Data.m_byCycCnt);			//四方
						}
					}
					// 清除查詢標(biāo)志
					pDevRun->query = 0;
				}
				else if(m_IEC103Data.m_timeover.IsOverTime(m_nCnt) && !pDevRun->bCommInitFlag)//校時(shí)
				{
					m_IEC103Data.m_timeover.Start(m_nCnt);
					BYTE byaddr = 0xff;
					SendAdjustTime103(byaddr);
					m_bAdjustTime = true;
				}
				else
				{						// 通用查詢
					BYTE byCode = CallClass2_code;
					if (pDevRun->acd) 
						byCode = CallClass1_code;

					PackLPDU_Fix(m_IEC103Data.m_byCycCnt, byCode);
				}		
			}	
		}
		m_IEC103Data.m_byCycCnt = (m_IEC103Data.m_byCycCnt+1) % CH_MAX_IED_NUM;
	}

	//asdu88
	void CIEC103_SFPtl::Pack_Asdu_88(BYTE byNodeID)
	{
		RealRunIED *pDevRun = m_IEC103Data.m_RunIed[byNodeID];
		BYTE byAddr = 0;
		if(m_IEC103PtlPara.bCommAddr)
			byAddr = m_IEC103PtlPara.byCKCPUAddr;
		else
			byAddr = pDevRun->pDevData->m_IEDConfig.byNodeAddr;

		ASDU_88_Fmt *pFmt = (ASDU_88_Fmt *)(m_IEC103Data.m_bySend + sizeof(LPDU_Vol_Head));
		pFmt->head.type = 88;
		pFmt->head.vsq.vsq = 0x81;
		pFmt->head.cot = 0x02;
		pFmt->head.addr = byAddr;//
		pFmt->head.fun = 1;
		pFmt->head.inf = 0;
		pFmt->qcc.frz = 0;
		pFmt->qcc.rqt = 5;
		pFmt->rii = m_IEC103Data.m_bySin ++;

		m_IEC103Data.m_wSendNum = sizeof(ASDU_88_Fmt);
		PackLPDU(byNodeID, SendCon_code);	
	}

	//asdu7
	void CIEC103_SFPtl::Pack_Asdu_7(BYTE byNodeID)
	{
		RealRunIED *pDevRun = m_IEC103Data.m_RunIed[byNodeID];

		BYTE byAddr = 0;
		if(m_IEC103PtlPara.bCommAddr)
			byAddr = m_IEC103PtlPara.byCKCPUAddr;
		else
			byAddr = pDevRun->pDevData->m_IEDConfig.byNodeAddr;

		ASDU_7_Fmt *pFmt = (ASDU_7_Fmt *)(m_IEC103Data.m_bySend + sizeof(LPDU_Vol_Head));
		pFmt->head.type = 7;
		pFmt->head.vsq.vsq = 0x81;
		pFmt->head.cot = 9;
		pFmt->head.addr = byAddr;
		pFmt->head.fun = 0xff;
		pFmt->head.inf = 0;
		pFmt->scn = m_IEC103Data.m_bySin ++;

		m_IEC103Data.m_wSendNum = sizeof(ASDU_7_Fmt);
		PackLPDU(byNodeID, SendCon_code);
	}//end Pack_ASDU7()

	//通用分類服務(wù)總查詢 ASDU21
	void CIEC103_SFPtl::Pack_ASDU_21(BYTE byNodeID)
	{
		RealRunIED* pRunIED = m_IEC103Data.m_RunIed[byNodeID];
		BYTE addr = 0;
		if (m_IEC103PtlPara.bCommAddr)//1:CPU地址
			addr = m_IEC103PtlPara.byCKCPUAddr;
		else
			addr = pRunIED->pDevData->m_IEDConfig.byNodeAddr;

		if (pRunIED->bGenGroupQury)
		{
			ASDU_21_Qury* pFmt = (ASDU_21_Qury*)(m_IEC103Data.m_bySend + sizeof(LPDU_Vol_Head));
			pFmt->head.type		= C_GC_NA_3;//0x15

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲电影第三页| 久久成人久久爱| 久久久久综合网| 欧美伊人久久久久久久久影院| 麻豆精品国产传媒mv男同 | 日韩欧美亚洲一区二区| 成人国产精品免费网站| 美女任你摸久久| 亚洲成人tv网| 亚洲激情自拍视频| 国产欧美一区二区精品秋霞影院 | 欧美在线观看视频一区二区| 韩国女主播成人在线观看| 一区二区三区视频在线观看| 国产精品视频在线看| 26uuu精品一区二区三区四区在线| 色婷婷久久久久swag精品| 成人一二三区视频| 久久电影国产免费久久电影| 天堂在线亚洲视频| 亚洲综合999| 亚洲欧美激情插| 国产精品久久久久一区二区三区共| 日韩欧美国产一区二区三区 | 在线观看日韩电影| 成人国产精品免费网站| 国产91精品精华液一区二区三区| 青椒成人免费视频| 视频一区国产视频| 亚洲电影第三页| 一区二区成人在线观看| 亚洲欧美日韩系列| 中文字幕一区二区三区乱码在线| 久久男人中文字幕资源站| 欧美一区二区福利在线| 欧美一区二区在线看| 欧美男男青年gay1069videost| 91影视在线播放| 91伊人久久大香线蕉| 91在线精品一区二区三区| 成人毛片在线观看| 成人av网址在线| 粉嫩在线一区二区三区视频| 成人免费视频免费观看| 成人a免费在线看| av成人免费在线观看| 99精品在线观看视频| 不卡av在线网| 91成人在线观看喷潮| 欧美午夜一区二区三区| 欧美亚洲另类激情小说| 911精品国产一区二区在线| 欧美一卡2卡3卡4卡| 精品久久人人做人人爰| 久久众筹精品私拍模特| 国产嫩草影院久久久久| 中文字幕在线播放不卡一区| 亚洲特黄一级片| 亚洲一区二区在线视频| 日韩高清不卡一区| 激情亚洲综合在线| 国产1区2区3区精品美女| av中文字幕亚洲| 色偷偷久久一区二区三区| 欧美性猛交xxxx黑人交| 欧美电影免费观看完整版 | 亚洲狠狠爱一区二区三区| 午夜久久久久久久久| 国产一区视频网站| 91网站最新网址| 欧美精品第一页| 日本一区二区视频在线观看| 亚洲色图欧洲色图| 日韩成人午夜电影| 国产成人精品综合在线观看| 99re66热这里只有精品3直播| 在线观看亚洲一区| 欧美一区二区不卡视频| 国产婷婷一区二区| 亚洲国产wwwccc36天堂| 精品一区二区免费在线观看| eeuss鲁片一区二区三区在线观看| 欧美喷潮久久久xxxxx| 国产欧美精品在线观看| 亚欧色一区w666天堂| 国产一区二区三区国产| 欧洲国产伦久久久久久久| 日韩欧美电影一二三| ㊣最新国产の精品bt伙计久久| 亚洲成人免费视| 波多野结衣欧美| 欧美日韩不卡一区| 亚洲国产精品成人久久综合一区 | 国产成人福利片| 欧美伦理视频网站| 自拍av一区二区三区| 加勒比av一区二区| 欧美三级乱人伦电影| 国产精品欧美一级免费| 精品中文av资源站在线观看| 欧美日韩亚洲综合一区| 中文字幕一区三区| 国内精品在线播放| 欧美老肥妇做.爰bbww视频| 最新热久久免费视频| 国产精品资源站在线| 欧美一区二区在线不卡| 亚洲精品成人精品456| 国产成人自拍在线| wwwwww.欧美系列| 日本不卡一区二区三区高清视频| 色狠狠综合天天综合综合| 欧美国产精品中文字幕| 国产揄拍国内精品对白| 欧美一区二区三区免费| 午夜精品一区在线观看| 欧美亚洲自拍偷拍| 亚洲精品成人天堂一二三| 99vv1com这只有精品| 国产亚洲精品超碰| 国产毛片精品视频| 精品国产乱码久久久久久1区2区| 天堂精品中文字幕在线| 欧美色综合久久| 一区二区不卡在线播放 | 国产福利一区二区| 精品国产一区久久| 久久精品国产秦先生| 欧美videos中文字幕| 秋霞成人午夜伦在线观看| 欧美人妇做爰xxxⅹ性高电影| 亚洲一区二区三区中文字幕在线| 91免费国产在线观看| 亚洲摸摸操操av| 91精品福利在线| 亚洲精品免费看| 在线免费不卡电影| 亚洲一区二区三区自拍| 欧美四级电影网| 亚洲综合区在线| 欧美剧情电影在线观看完整版免费励志电影 | 国产成人午夜视频| 国产色一区二区| 粉嫩绯色av一区二区在线观看 | 久久免费视频色| 国内一区二区视频| 欧美国产禁国产网站cc| 国产成人综合在线观看| 国产精品久久久久久久久免费樱桃| 成人国产精品免费网站| 亚洲精品久久7777| 欧美日韩免费一区二区三区视频| 亚洲chinese男男1069| 欧美二区在线观看| 国产综合色视频| 国产精品国产自产拍在线| 色婷婷精品久久二区二区蜜臂av | 极品少妇xxxx精品少妇偷拍| 久久久精品欧美丰满| 99久久精品国产导航| 亚洲观看高清完整版在线观看| 欧美一区二区三区电影| 国产成人精品亚洲777人妖| 亚洲摸摸操操av| 日韩欧美黄色影院| 成人精品国产一区二区4080| 又紧又大又爽精品一区二区| 91精品久久久久久久99蜜桃| 国产在线播放一区二区三区 | 国产一区二区在线看| 国产精品久久夜| 欧美中文字幕一二三区视频| 另类小说色综合网站| 国产精品久久精品日日| 欧美日韩国产首页| 国产在线视视频有精品| 亚洲欧美aⅴ...| www久久精品| 欧美中文字幕一区二区三区 | 国产精品自拍毛片| 亚洲主播在线观看| 久久久国产综合精品女国产盗摄| 在线精品视频免费播放| 国产一区二区毛片| 午夜久久久久久| 国产精品每日更新| 日韩精品一区二区三区四区| 波多野结衣欧美| 狠狠色丁香婷婷综合久久片| 一区二区三区四区五区视频在线观看| 日韩精品一区二区在线| 在线精品视频一区二区三四| 国产精品亚洲第一| 日本亚洲视频在线| 亚洲一区影音先锋| 中文字幕中文字幕在线一区 | 成人污视频在线观看| 蜜臀av性久久久久av蜜臀妖精| 亚洲欧洲精品一区二区精品久久久 | 热久久久久久久|