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

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

?? do_m22.c

?? 車載GPS監控終端的完整代碼,與監控中心的通訊采用GPRS.
?? C
?? 第 1 頁 / 共 5 頁
字號:

/********************************************************\
*	文件名:  Do_GSM.C
*	創建時間:2004年12月7日
*	創建人:  
*	版本號:  1.00
*	功能:	  針對GSM模塊進行的一些操作,包括發送數據和接收數據
*	文件屬性:公共文件
*	修改歷史:(每條詳述)
\********************************************************/
#include <msp430x14x.h>
#include "Other_Define.h"
#include "General.h"
#include "SPI45DB041.h"
#include "Define_Bit.h"
#include "D_Buffer.h"
#include "Uart01.h"
#include "M22_AT.h"
#include "Check_GSM.h"
#include "Sub_C.h"
#include "Do_Reset.h"
#include "W_Protocol.h"
#include "TA_Uart.h"
#include "Handle_Protocol.h"
#include "Do_Handle.h"
#include "Do_SRAM.h"
#include "Do_M22.h"
/*
#include "Do_Record.h"
#include "Record_Protocol.h"
#include "Main_Init.h"
#include "Disp_Protocol.h"
*/
#define Debug_GSM_COM1

void Case1_GSM_PHONE(void);
void Case1_PHONE_Out(void);


void Case2_GSM_OTHER(void);
void Case2_OTHER_Out(void);

void Case3_GSM_SMS_IN(void);
void Case3_SMSIN_Out(void);

void Case4_GSM_SMS_OUT(void);
void Case4_SMSOUT_Out(void);
void Case4_OverTime_Out(unsigned char Clear_Flag);

void Case5_LAND_GPRS_OPER(void);
void Case6_GPRS_DATA_OPER(void);

void Send_Type1_GSM_Data_One(unsigned char S_Address);
void Send_Type1_GSM_Data_Two(unsigned char S_Address);

void Send_Circle_GSM_TypeD(void);
void Send_Circle_TCP_TypeD(void);
void Send_Circle_GSM_TypeE(void);
void Send_Circle_TCP_TypeE(void);
void Case_OverTime_Return(void);

//作為音量四個檔位(起作用的也就是后面的四個數,前一個數的存在是為了使數組的下標和音量值想對應上)
/********************************************************\
*	函數名:Do_G20_Out
	作用域:外部文件調用
*	功能:
*	參數:
*	返回值:
*	創建人:
*
*	修改歷史:(每條詳述)
	A,表示GSM工作方式
	B,表示TCP掛起的工作方式
	C,表示TCP在線的工作方式

	補充說明:因為根據M22模塊的特性:幾個CASE的功能
	1,處理與電話相關的業務(AB),
	2,處理與CSQ方面的查詢(AB)
	3,SMS的接收(中斷方式接收處理)(AB)
	4,SMS的發送操作(A)
	5,處理需要TCP登陸,TCP退出,TCP在線。
	6,TCP在線狀態下進行TCP的數據業務

	根據M22的相關特性:則可以分為如下幾種操作方式

	正常的工作流程:
	設備啟動后:如果根據條件需要進行TCP登陸的話
	1-2-3-4-5(登陸)--6(發送登陸信息)---等待登陸響應----(A)接收到響應(A01)6(循環處理)(A02)CSQ查詢時間到(A03)+++掛起(A03)2---(A04)6(循環處理)
												   							---
												                            ---(A011)判斷有電話相關的業務(撥出號碼和電話打入)--(A012)+++掛起---1()

												   ----(B)未接收到響應(B01)6(發送登陸信息)--等待登陸響應
	具體的的工作方式:
	1,設備上電,啟動M22,進入GSM的工作方式:
	2,如果判斷設備判斷有報警信息(報警信息默認為30秒的周期發送),
		同時IP地址有效,TCP處于開啟狀態,則需要在啟動M22工作后,
		進行TCP登陸操作,此時需要TCP一直在線,進行發送報警信息
	3,如果判斷設備有需要發送行車軌跡數據,同時IP地址有效,TCP處于開啟狀態,
		則也需要在啟動M22工作后,進行TCP登陸操作,此時又分兩重情況
		如果發送軌跡數據的周期如果小于3分鐘,則屬于一直在線狀態),而如何
		發送行車軌跡數據的周期大于等于3分鐘,則在需要發送軌跡數據的時刻
		才進行登陸操作,然后進行發送數據。發送完數據后,則立即退出TCP在線。
	4,如果屬于TCP一直在線的狀態,則每間隔一定時間將TCP掛起,進行CSQ的查詢

登陸TCP的工作流程:如果登陸上TCP,并且通過TCP發送登陸信息后,等待返回登陸響應
如果超過一定時間未返回登陸響應,則繼續發送登陸信息。如果連續5次均為發送登陸信息后
仍無登陸響應,則退出TCPZ狀態,重新進行TCP登陸
\********************************************************/
void Do_G20_Out(void)
{
	switch(gGSM_Oper_Type)
	{
		/*
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		1,GSM_PHONE:主要是針對電話語音方面的處理,撥號,接聽,掛機,DTMF,音量調節。根據M22的特殊性,如果TCP
			在線的狀態下,必須要先退出TCP在線,然后才能進行相關電話業務的處理
			只有在GSM的工作方式下執行這個指令
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		*/
		case GSM_PHONE:
		{
			Case1_GSM_PHONE();
			break;
		}
		/*
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		2,GSM_OTHER:沒電話的時候CSQ的查詢,根據M22的方式,則可以不通過查詢CLCC來確定電話業務的狀態
		   在GSM和TCP掛起的狀態下執行
		+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		*/
		case GSM_OTHER:
		{
			Case2_GSM_OTHER();
			break;
		}
		/*
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		3,GSM_SMS_IN:因為M22的接收SMS的方式采用的是中斷方式,則直接在中斷處理中處理,則可以不處理這個模塊
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		*/
		case GSM_SMS_IN:
		{
			Case3_GSM_SMS_IN();
			break;
		}
		/*
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		4,GSM_SMS_OUT:主要處理M22通過GSM方式發送數據包,只有在GSM工作方式下
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		*/
		case GSM_SMS_OUT:
		{
			Case4_GSM_SMS_OUT();
			break;
		}
		/*
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		5,CHECK_GPRS_LINK:專門用于進行退出TCP和登陸TCP的操作流程,或者重新執行進入TCP的操作
							在GSM工作方式和TCP掛起的方式下
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		*/
		case LAND_TCP_OPER:
		{
			Case5_LAND_GPRS_OPER();
			break;
		}
		/*
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		6,GPRS_DATA_OPER:M22的TCP方式發送和接收數據(),如果需要退出的時候進行AT指令的其他操作的時候,則需要
			先將TCP掛起,可以進行接收SMS,或者發送SMS。如果是電話業務,則需要掛起后,然后退出TCP登陸,才可以進行
			電話方面的相關業務
		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
		*/
		case GPRS_DATA_OPER:
		{
			Case6_GPRS_DATA_OPER();
			break;
		}
		default:
			break;
	}

}
/********************************************************\
*	函數名:Case1_GSM_PHONE
	作用域:本地文件調用
*	功能:Do_G20_Out模塊中的一個case執行模塊,主要是針對電話語音方面的處理,撥號,接聽,掛機,DTMF,音量調節方面的處理。
*
	參數:	只有在滿足能進入這個case的條件時候,才能進入執行這個模塊,
*	返回值:不同的情形是需要對不同的全局變量進行重新附值
*	創建人:
*
*	修改歷史:(每條詳述)
	補充說明:	手柄相關的AT指令存儲在buffer1中的0x5D----0x7A區域。第一個字節0x5D存儲0或者1,為0則表示
				后面的數據已經處理,為1則表示后面的數據未處理。0x5E存儲相關的AT指令的類型,如掛機,撥號等
				后面如果還有數據(電話號碼等)最后數據結束以0X00作為結束標志處理。

	改為M22模塊后,因為其特性,在這個CASE中需要增加一些處理:
	1,如果有手柄或者監聽對外撥號的信令,同時如果M22處于TCP在線且被掛起的狀態,則需要先執行ATH指令,退出TCP
	狀態,然后才能進行撥號處理
\********************************************************/
void Case1_GSM_PHONE(void)
{
	unsigned int i=0,j=0,k=0,n=0;
	unsigned char Phone_s=0;
	unsigned char Phone_e=0;
	OperateSPIEnd();
	//判斷監聽完后,是否需要恢復語音通道的處理
	if( ( (gGeneral_Flag&TCP_PHONE_F_1)==0)&&(gGeneral_Flag&MONITOR_RESUME_F_1) )
	{
		gTimer=0;
		while(gTimer<200){Check_GSM();}
		Send_COM0_String((unsigned char *)AT_AUGAIN,sizeof(AT_AUGAIN));
		Send_COM0_Byte('1');Send_COM0_Byte(',');
		Send_COM0_Byte('5');Send_COM0_Byte(0x0d);
		gInternal_Flag&=~M22_RETURN_OK_1;
		Wait_OK();
		if( (gInternal_Flag&M22_RETURN_OK_1)==0 );
		else
		{
			//2,固定調節SPEKER的接收增益
			gTimer=0;
			while(gTimer<200){Check_GSM();}
			Send_COM0_String((unsigned char *)AT_AUGAIN,sizeof(AT_AUGAIN));
			Send_COM0_Byte('2');Send_COM0_Byte(',');Send_COM0_Byte(Handle_VOL[TWO]);Send_COM0_Byte(0x0d);
			gInternal_Flag&=~M22_RETURN_OK_1;
			Wait_OK();
			if( (gInternal_Flag&M22_RETURN_OK_1)==0 );
			else
			{
				//3,調節AT$AUVOL的接收增益
				gTimer=0;
				while(gTimer<200){Check_GSM();}
				Send_COM0_String((unsigned char *)AT_AUVOL,sizeof(AT_AUVOL));
				Send_COM0_Byte('5');Send_COM0_Byte(0x0d);
				gInternal_Flag&=~M22_RETURN_OK_1;
				Wait_OK();
				if( (gInternal_Flag&M22_RETURN_OK_1)==0 );
				else
				{
					gGeneral_Flag&=~MONITOR_RESUME_F_1;
					P6OUT&=~SEL_MIC;
	   	 			Send_COM3_Load(4,MAIN_HANG_UP,0);
	   	 			gSys_Handle=MAIN_HANG_UP;
				}
			}
		}
	}
	OperateSPIEnd();

	//返回退出電話相關業務的CASE結構的滿足條件:唯一正常的跳出此
	if( (SRAM_Read(PHONE_AT_2)!=VAILD_2)
		 &&( (gPhone_Status==ACTIVE_HANDLE)||(gPhone_Status==ACTIVE_MONITOR)||(gPhone_Status==READY) )   )
	{
		if( (gGeneral_Flag&RING_F_1)==0 )
		{
			gGSM_Oper_Type=GSM_OTHER;
			gGSM_OTHER_Step=0;gPhone_Step=0;
			gTimer_GSM_AT=0;
			Check_GSM();
			gInternal_Flag&=~GSM_ONEAT_SUCCESS_1;
			OperateSPIEnd();
			return;
		}
	}
	//如果buffer1中有相應的處理數據
	if( (gInternal_Flag&GSM_ONEAT_SUCCESS_1)==0 )
	{
		if( gTimer_GSM_AT>600)
		{
			gTimer_GSM_AT=0;
			SRAM_Init();
			j=SRAM_Read(PHONE_AT_2);
			if(j==VAILD_2)
			{
				i=SRAM_Read(PHONE_AT_2+1);
				if	   (i==H_DIAL)		   	gPhone_Step=1;		//手柄撥號
				else if(i==M_DIAL)			gPhone_Step=5;		//監聽撥號
				else if(i==H_ANSWER)		gPhone_Step=10;		//手柄接聽
				else if(i==H_DTMF)			gPhone_Step=11;		//手柄DTMF撥號
				else if(i==H_VOLADJ)		gPhone_Step=12;		//手柄調節音量
				else if(i==H_HUNGUP)		gPhone_Step=13;		//手柄掛機
				else
				{
					Check_GSM();
					SRAM_Init();
					SRAM_Write(PHONE_AT_2,NULL_2);
					SRAM_Write(PHONE_AT_2+1,0);
				}
			}
		}
		else if(gGeneral_Flag&RING_F_1)
		{
			//判斷是否有來電顯示
			//+CLIP: "13670155704",129,,,,0
			if( Check_GSM()!=0 )
			{
				if(Compare_String(gGeneral_Buffer,(unsigned char *)String_CLIP,sizeof(String_CLIP))!=0)
				{
					gStatus1_Flag|=PHONE_ONLINE_F_1;
					j=SRAM_Read(PHONE_AT_2+0);
					i=SRAM_Read(PHONE_AT_2+1);
					if((i==H_HUNGUP)&&(j==VAILD_2));
					else
					{
						i=5;
						gPublic_Flag&=~ALLOW_PHONE_IN_F_1;
						while(1)
						{
							if(gGeneral_Buffer[i]=='"')	break;
							i++;if(i>15) return;
						}
						i++;
						Phone_s=i;				//第一個號碼的位置序號
						SRAM_Init();
						SRAM_Write(SHANDLE_DATA_VAILD+0,VAILD_2);
						SRAM_Write(SHANDLE_DATA_VAILD+1,0x24);
						SRAM_Write(SHANDLE_DATA_VAILD+2,0x14);
						SRAM_Write(SHANDLE_DATA_VAILD+3,MAIN_PHONE_IN);
						j=i+16;
						k=0;
						while(1)
						{
							if(gGeneral_Buffer[i]!='"')
							{
								SRAM_Write(SHANDLE_DATA_VAILD+4+k,gGeneral_Buffer[i]);
								i++;k++;
								if(i>j)
								{
									n=0;
									break;
								}
							}
							else
							{
								n=k;
								break;
							}
						}
						Phone_e=i-1;					//號碼最后一個位的序號
						for(k=i;k<j;k++)
						{
							SRAM_Write(SHANDLE_DATA_VAILD+4+n+(k-i),0x20);
						}
						SRAM_Write(SHANDLE_DATA_VAILD+4+n+j-i,0x0d);
						gPhone_Status=INCOMING;
						//判斷比較是否與Flash中存儲的中心服務號碼相同
						if(   ((gON_OFF_Temp0&PHONE_IN_ON)==0)
							&&((gCommon_Flag&CHECK_RINGPHONE_F_1)==0 )	)
						{
							for(i=0;i<Phone_e-Phone_s;i++)
							{
								gGeneral_Buffer[i]=gGeneral_Buffer[Phone_s+i];
							}
							i=1;
							i=Check_Allow_Phone(Phone_e-Phone_s);
							//與匹配的號碼不一樣
							if(i==1)			gPublic_Flag&=~ALLOW_PHONE_IN_F_1;
							//與匹配的號碼一樣
							else				gPublic_Flag|=ALLOW_PHONE_IN_F_1;
							gCommon_Flag|=CHECK_RINGPHONE_F_1;
						}
					}
					gPhone_Status=INCOMING;
				}
			}
		}
	}
	/********************************************************\
	\********************************************************/
	//1,手柄撥號處理
	if(gPhone_Step==1)
	{
		gPhone_Step=4;gTimer_GSM_AT=0;
	}
	else if(gPhone_Step==4)
	{
		if( gTimer_GSM_AT>400 )
		{
			if(gPhone_Status==READY)
			{
				Send_COM0_String((unsigned char *)ATD,sizeof(ATD));
				//電話號碼的長度
				k=SRAM_Read(PHONE_AT_2+2);
				for(j=0;j<k;j++)
				{
					Send_COM0_Byte(SRAM_Read(PHONE_AT_2+3+j));
				}
				OperateSPIEnd();
				Send_COM0_Byte(';');
				Send_COM0_Byte(0x0d);
				gInternal_Flag|=GSM_ONEAT_SUCCESS_1;
				gPhone_Step=14;
				gTimer_GSM_AT=0;
				gGeneral_Flag|=DAILING_UP_F_1;
				gGeneral_Flag|=TCP_PHONE_F_1;
				gHangUp_Timer=0;
				gPhone_Status=DAILING;
				SRAM_Init();
				SRAM_Write(PHONE_AT_2+0,NULL_2);
				SRAM_Write(PHONE_AT_2+1,0);
				for(i=PHONE_AT_2+1;i<ECHO_SMS_2;i++)
				{
					SRAM_Write(i,0);
				}

				gStatus1_Flag|=PHONE_ONLINE_F_1;
			}
			else	Case1_PHONE_Out();
		}
		else Check_GSM();
	}
	/********************************************************\
	2,監聽撥號處理()如果屬于是監聽處理,則先處理將麥克的增益調節最大
		將,然后將SPEAKER的接收增益調節為關閉狀態,然后控制模擬開關的通道轉換
	\********************************************************/
	else if(gPhone_Step==5)
	{
		if( gTimer_GSM_AT>400 )
		{
			if(gPhone_Status==READY)
			{
				gTimer=0;
				while(gTimer<200){Check_GSM();}
				Send_COM0_String((unsigned char *)AT_AUGAIN,sizeof(AT_AUGAIN));
				Send_COM0_Byte('1');Send_COM0_Byte(',');
				Send_COM0_Byte('9');Send_COM0_Byte(0x0d);
				gInternal_Flag&=~M22_RETURN_OK_1;
				Wait_OK();
				if( (gInternal_Flag&M22_RETURN_OK_1)==0 )
				{
					gPhone_Step=5;gTimer_GSM_AT=0;
				}
				else
				{
					//2,固定調節SPEKER的接收增益為1
					gTimer=0;
					while(gTimer<200){Check_GSM();}
					Send_COM0_String((unsigned char *)AT_AUGAIN,sizeof(AT_AUGAIN));
					Send_COM0_Byte('2');Send_COM0_Byte(',');Send_COM0_Byte('1');Send_COM0_Byte(0x0d);
					gInternal_Flag&=~M22_RETURN_OK_1;
					Wait_OK();
					if( (gInternal_Flag&M22_RETURN_OK_1)==0 )
					{
						gPhone_Step=5;gTimer_GSM_AT=0;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
视频一区二区中文字幕| 亚洲中国最大av网站| 91麻豆精品国产自产在线 | 欧洲亚洲国产日韩| 91在线视频观看| 色中色一区二区| 欧美三级日本三级少妇99| 欧美日韩黄视频| 717成人午夜免费福利电影| 欧美日韩国产一级| 777a∨成人精品桃花网| 日韩美女一区二区三区四区| 欧美一级片在线| 26uuu亚洲| 日韩毛片高清在线播放| 亚洲成人精品一区| 韩国视频一区二区| 成人a区在线观看| 欧美日韩一区二区三区在线看| 91麻豆精品国产综合久久久久久| 精品国产91洋老外米糕| 日本一区二区三区国色天香| 亚洲图片欧美激情| 蜜臀av一级做a爰片久久| 国产美女在线精品| 色噜噜夜夜夜综合网| 51精品国自产在线| 中文字幕一区二区三区精华液| 亚洲午夜久久久久中文字幕久| 日本美女视频一区二区| 成人午夜大片免费观看| 欧美日韩第一区日日骚| 国产欧美日韩综合| 日日夜夜免费精品| 成人高清免费观看| 精品国产免费一区二区三区香蕉 | 91在线视频网址| 7777精品伊人久久久大香线蕉经典版下载| 精品福利一二区| 一区二区三区久久久| 国产suv一区二区三区88区| 欧美日韩激情一区二区三区| 国产精品女主播av| 天堂va蜜桃一区二区三区漫画版| 国产另类ts人妖一区二区| 欧美日韩精品一区二区天天拍小说 | 免费成人深夜小野草| 99久久99久久精品免费看蜜桃| 日韩你懂的电影在线观看| 制服丝袜中文字幕一区| av在线不卡电影| 日韩美一区二区三区| 亚洲无人区一区| 色综合亚洲欧洲| 亚洲欧美综合网| 成人国产亚洲欧美成人综合网| 精品裸体舞一区二区三区| 亚洲成av人影院| 欧美无人高清视频在线观看| 国产精品久久久久9999吃药| 国产一区二区三区免费观看| 日韩欧美国产午夜精品| 日精品一区二区| 在线观看不卡视频| 亚洲综合色婷婷| 欧美性色黄大片| 亚洲一区二区三区视频在线播放| 972aa.com艺术欧美| 综合色中文字幕| 成人动漫一区二区三区| 国产精品成人免费精品自在线观看| 免费成人在线视频观看| 日韩一区二区免费视频| 免播放器亚洲一区| 精品久久人人做人人爽| 久久99精品国产91久久来源| wwwwww.欧美系列| 国产乱码精品一区二区三区忘忧草 | 欧美体内she精高潮| 一区二区三区中文字幕电影| 欧美中文字幕一区二区三区| 亚洲国产美女搞黄色| 欧美精品v国产精品v日韩精品 | 亚洲已满18点击进入久久| 色婷婷国产精品| 午夜在线成人av| 日韩一区二区三区观看| 国产乱子轮精品视频| 国产精品久久久久aaaa樱花| 日本高清不卡一区| 国产成人亚洲综合a∨婷婷图片 | 天天综合色天天| 日韩精品一区二区三区在线观看| 国产一区中文字幕| 自拍偷在线精品自拍偷无码专区| 欧美性猛片aaaaaaa做受| 日本中文在线一区| 久久精品一区八戒影视| 色综合久久久久| 欧美丝袜丝交足nylons图片| 亚洲成人777| 日韩欧美国产电影| 成av人片一区二区| 日韩成人精品在线| 亚洲国产精品二十页| 欧美久久一二区| 成人一二三区视频| 日韩在线一区二区三区| 久久久一区二区三区捆绑**| 欧美午夜精品久久久久久超碰| 开心九九激情九九欧美日韩精美视频电影 | 久久免费电影网| 色久优优欧美色久优优| 国内精品嫩模私拍在线| 亚洲精品自拍动漫在线| 2023国产精品视频| 欧美日韩电影在线| 99在线精品观看| 久久 天天综合| 亚洲综合激情另类小说区| 国产女人18水真多18精品一级做| 欧美日韩一区二区三区视频| 不卡的av电影| 国产成人免费xxxxxxxx| 日韩综合一区二区| 亚洲免费观看高清完整版在线观看| 欧美一级片在线| 欧美日韩亚洲高清一区二区| 91麻豆免费视频| 国产成人综合亚洲网站| 狠狠色丁香久久婷婷综| 人人超碰91尤物精品国产| 亚洲va欧美va人人爽| 亚洲激情五月婷婷| 综合亚洲深深色噜噜狠狠网站| 精品福利av导航| 日韩精品中午字幕| 欧美一区二区在线免费观看| 欧美日韩中文字幕一区| 色综合久久综合网97色综合| 国产精选一区二区三区| 精久久久久久久久久久| 久久成人精品无人区| 日韩高清不卡一区| 日韩avvvv在线播放| 蜜桃视频在线观看一区二区| 免费的国产精品| 免费不卡在线视频| 久久99精品国产.久久久久久| 免费xxxx性欧美18vr| 懂色av中文字幕一区二区三区| 玖玖九九国产精品| 久久99国产精品久久| 国产自产2019最新不卡| 国产麻豆成人传媒免费观看| 国产精品一区二区果冻传媒| 国产福利电影一区二区三区| 国产91丝袜在线18| 91天堂素人约啪| 在线观看中文字幕不卡| 欧美美女bb生活片| 日韩欧美美女一区二区三区| 国产色爱av资源综合区| 亚洲欧美影音先锋| 亚洲综合在线免费观看| 日韩和欧美一区二区| 久久国产生活片100| 成人在线一区二区三区| 色悠悠亚洲一区二区| 欧美性大战久久| 日韩久久精品一区| 国产精品国产三级国产普通话蜜臀 | 综合分类小说区另类春色亚洲小说欧美| 中文字幕一区二区三区四区| 亚洲国产你懂的| 国产真实乱子伦精品视频| 成人黄色小视频在线观看| 在线观看区一区二| 亚洲精品一线二线三线无人区| 中文在线资源观看网站视频免费不卡 | 日韩免费高清视频| 国产精品美女www爽爽爽| 一区二区久久久久| 狠狠色丁香九九婷婷综合五月 | 亚洲mv大片欧洲mv大片精品| 免费日本视频一区| 91小宝寻花一区二区三区| 欧美一区二区性放荡片| 综合久久久久久久| 蜜乳av一区二区| 在线精品视频小说1| 精品理论电影在线观看| 一区二区三区欧美久久| 国产精品538一区二区在线| 色婷婷久久综合| 久久久国产午夜精品 | 一区二区三区欧美亚洲| 韩国v欧美v亚洲v日本v| 欧美日韩大陆在线| 亚洲欧美日韩中文播放 |