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

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

?? sms.c

?? 這是一個利用短信實現(xiàn)抄表的工程的源碼,單片機通過串口與TC35通訊.同時單片機通過485與表記通訊,獲得表記數(shù)據(jù)后以短信的形式發(fā)給用戶.
?? C
字號:
#include "uart.h"
#include "sms.h"
#include "string.h"
#include "sfr_r811.h"
#include "int.h"
//extern const char accii[];
#pragma ROM tabhex
static const char tabhex[]="0123456789ABCDEF";	
int gsmInvertNumbers(char* pSrc, char* pDst, int nSrcLength)
{
	int nDstLength,i;		
	char ch;			
	nDstLength = nSrcLength;
	for(i=0; i<nSrcLength;i+=2)
	{
		ch = *pSrc++;		
		*pDst++ = *pSrc++;	
		*pDst++ = ch;		
	}

	if(nSrcLength & 1)
	{
		*(pDst-2) = 'F';	
		nDstLength++;		
	}
	*pDst = '\0';
	return nDstLength;
}


int gsmSerializeNumbers(char* pSrc, char* pDst, int nSrcLength)
{
	int nDstLength,i;
	char ch;		
	nDstLength = nSrcLength;

	for(i=0; i<nSrcLength;i+=2)
	{
		ch = *pSrc++;		
		*pDst++ = *pSrc++;	
		*pDst++ = ch;	
	}

	if(*(pDst-1) == 'F')
	{
		pDst--;
		nDstLength--;	
	}
	*pDst = '\0';
	return nDstLength;
}
/**************************************************************
// byte data transform to string in hex
// {0xC8, 0x32, 0x9B, 0xFD, 0x0E, 0x01} --> "C8329BFD0E01" 
// pSrc: point to source data in hex
// pDst: point to dest string 
// nSrcLength: source data length inbyte
// retur:dest string length;
**************************************************************/
int gsmBytes2String(unsigned  char* pSrc, char* pDst, int nSrcLength)
{       int i;
	for(i=0; i<nSrcLength; i++)
	{
		*pDst++ = tabhex[*pSrc >> 4];		
		*pDst++ = tabhex[*pSrc & 0x0f];	
		pSrc++;
	}

	*pDst = '\0';
	return (nSrcLength*2);
}
/**************************************************************
//string transform to byte in hex
// example:"C8329BFD0E01" --> {0xC8, 0x32, 0x9B, 0xFD, 0x0E, 0x01}
// pSrc: point to source string
// pDst: point to dest byte array
// nSrcLength: source string length
// retur:dest data length in byte;
**************************************************************/
int gsmString2Bytes(char* pSrc, unsigned char* pDst, int nSrcLength)
{       int i;
	for(i=0; i<nSrcLength; i+=2)
	{
		
		if(*pSrc>='0' && *pSrc<='9')
		{
			*pDst = (*pSrc - '0') << 4;
		}
		else
		{
			*pDst = (*pSrc - 'A' + 10) << 4;
		}

		pSrc++;

		if(*pSrc>='0' && *pSrc<='9')
		{
			*pDst |= *pSrc - '0';
		}
		else
		{
			*pDst |= *pSrc - 'A' + 10;
		}

		pSrc++;
		pDst++;
	}
	return nSrcLength / 2;
}

int gsmEncode7bit(char* pSrc, unsigned char* pDst, int nSrcLength)
{
	int nSrc;		
	int nDst;		
	int nChar;		
	unsigned char nLeft;	

	nSrc = 0;
	nDst = 0;
	while(nSrc<nSrcLength)
	{
		nChar = nSrc & 7;
		if(nChar == 0)
		{nLeft = *pSrc;
		}
		else
		{	
			*pDst = (*pSrc << (8-nChar)) | nLeft;
			nLeft = *pSrc >> nChar;
			pDst++;
			nDst++;
		}
		pSrc++;
		nSrc++;
	}
	return(nDst);
}

int gsm7bitLength(char* pSrc, int nSrcLength)
{
	int nSrc;		
	int nDst;		
	int nChar;		
	unsigned char nLeft;	

	nSrc = 0;
	nDst = 0;
	while(nSrc<nSrcLength)
	{
		nChar = nSrc & 7;
		if(nChar == 0)
		{nLeft = *pSrc;
		}
		else
		{	
			//*pDst = (*pSrc << (8-nChar)) | nLeft;
			nLeft = *pSrc >> nChar;
			//pDst++;
			nDst++;
		}
		pSrc++;
		nSrc++;
	}
	return(nDst);
}

int gsmDecode7bit(unsigned char* pSrc, char* pDst, int nSrcLength)
{
	int nSrc;		
	int nDst;		
	int nByte;		
	unsigned char nLeft;	
	nSrc = 0;
	nDst = 0;
	nByte = 0;
	nLeft = 0;

	while(nSrc<nSrcLength)
	{
		*pDst = ((*pSrc << nByte) | nLeft) & 0x7f;

		nLeft = *pSrc >> (7-nByte);

		pDst++;
		nDst++;

		nByte++;

		if(nByte == 7)
		{
			*pDst = nLeft;
			pDst++;
			nDst++;
			nByte = 0;
			nLeft = 0;
		}

		pSrc++;
		nSrc++;
	}
	*pDst = '\0';
	return nDst;
}

int gsmBcd2Unistr(char *pSrc,char* pDst,int nSrcLength)
{       int i;
        
	for(i=0; i<nSrcLength; i++)
	{  
		
	        *pDst++='0';
	        *pDst++='0';
		*pDst++='3';
		*pDst++=tabhex[*pSrc>>4];	
		*pDst++='0';
	        *pDst++='0';
	        *pDst++='3';	
		*pDst++=tabhex[*pSrc & 0x0f];	
		pSrc++;
	}

	*pDst = '\0';
	return(nSrcLength*4);
	
}

int gsmEncodePdu(SM_PARAM* pSrc, char* pDst)
{
	int nLength,i;			
	int nDstLength;			
	unsigned char buf[100];	
//no smsc
	nLength = strlen(pSrc->SCA);	
	if(nLength!=0)
	{
	buf[0] = (char)((nLength & 1) == 0 ? nLength : nLength + 1) / 2 + 1;
	buf[1] = 0x91;	
	nDstLength = gsmBytes2String(buf, pDst, 2);		
	nDstLength += gsmInvertNumbers(pSrc->SCA, &pDst[nDstLength], nLength);	
	}
        else 
        {
        buf[0]=0;	
        nDstLength = gsmBytes2String(buf, pDst, 1);	
        }
	
	nLength = strlen(pSrc->TPA);	// TP-DA length
	buf[0] = 0x11;					// (TP-MTI=01),TP-VP(TP-VPF=10)
	buf[1] = 0;					// TP-MR=0
	buf[2] = (char)nLength;			// TP-DA length
	buf[3] = 0x91;				// international format
	nDstLength += gsmBytes2String(buf, &pDst[nDstLength], 4);		 
	nDstLength += gsmInvertNumbers(pSrc->TPA, &pDst[nDstLength], nLength);	 

	// TPDU
	nLength = strlen(pSrc->TP_UD);	// TP_UD LENGTH
	buf[0] = pSrc->TP_PID;			// (TP-PID)
	buf[1] = pSrc->TP_DCS;			// (TP-DCS)
	buf[2] = 0;						
	if(pSrc->TP_DCS == GSM_7BIT)	
	{  	
		buf[3] = nLength;			// 
		nLength = gsmEncode7bit(pSrc->TP_UD, &buf[4], nLength+1) + 4;	// TP-DAP 2 PDU
		nDstLength += gsmBytes2String(buf, &pDst[nDstLength], nLength);	// PDU
	}
	else if(pSrc->TP_DCS == GSM_UCS2)
	{
		buf[3] = nLength/2;
		nDstLength+=gsmBytes2String(buf, &pDst[nDstLength],4);
		
		for(i=0;i<nLength;i++)
		{
		pDst[nDstLength+i]=pSrc->TP_UD[i];
		}
		nDstLength+=nLength;
		
		
	}
	else
	{
		//8-bit
		buf[3] = nLength;
		for(i=0;i<nLength;i++)
		{
		buf[4+i]=pSrc->TP_UD[i];
		}
		nLength = buf[3] + 4;		// nLength
		nDstLength += gsmBytes2String(buf, &pDst[nDstLength], nLength); // PDU
	
		
	}
	
        pDst[nDstLength]='\0';
	return(nDstLength);//byte lenth
}


int gsmDecodePdu(char* pSrc, SM_PARAM* pDst)
{
	int nDstLength,i;			
	unsigned char tmp,tmp1;
		
	
	//smsc addr
	gsmString2Bytes(pSrc, &tmp, 2);	
	tmp = (tmp - 1) * 2;	
	pSrc += 4;			
	gsmSerializeNumbers(pSrc, pDst->SCA, tmp);	
	pSrc += tmp;		
         
	//toa information
	gsmString2Bytes(pSrc, &tmp, 2);	
	pSrc += 2;
	gsmString2Bytes(pSrc,&tmp1,2);
		
	if(tmp & 0x84)
	{
		if(tmp1!=0x91)
		{
		strncpy(pDst->TPA,"86",2);
		}
		gsmString2Bytes(pSrc, &tmp, 2);	
		if(tmp & 1) tmp += 1;	
		pSrc += 4;
		if(tmp1!=0x91)
		gsmSerializeNumbers(pSrc, &pDst->TPA[2], tmp);			
	        else 
	        gsmSerializeNumbers(pSrc, pDst->TPA, tmp);	
		pSrc += tmp;		
	}

	//tpdu information
	gsmString2Bytes(pSrc, (unsigned char*)&pDst->TP_PID, 2);	
	pSrc += 2;		
	gsmString2Bytes(pSrc, (unsigned char*)&pDst->TP_DCS, 2);	
	pSrc += 2;		
	gsmSerializeNumbers(pSrc, pDst->TP_SCTS, 14);		
	pSrc += 14;		
	gsmString2Bytes(pSrc, &tmp, 2);	
	pSrc += 2;	
		
        if(pDst->TP_DCS == GSM_7BIT)	
	{
		// 7-bit
		nDstLength = gsmString2Bytes(pSrc, pSrc, tmp & 7 ? (int)tmp * 7 / 4 + 2 : (int)tmp * 7 / 4);	
		gsmDecode7bit(pSrc, pDst->TP_UD, nDstLength);	
		nDstLength = tmp;
	}
	else if(pDst->TP_DCS == GSM_UCS2)
	{
		// UCS2
		for(i=0;i<tmp/2;i++)
			{
			pSrc+=2;	
			gsmString2Bytes(pSrc,&(pDst->TP_UD[i]),2);
			pSrc+=2;
			
			}
			nDstLength=tmp/2;
			pDst->TP_UD[nDstLength]='\0';
		
	}
	else
	{
		// 8-bit
		for(i=0;i<tmp*2;i++)
			{
			pDst->TP_UD[i]=pSrc[i];
			}
			nDstLength=tmp*2;
			pDst->TP_UD[nDstLength]='\0';
		
	}	
	return(nDstLength);
}


/**************************************************************
//read message from gsm modle,index is set in pMsg->index
//  ui, uart0/1
// pSrc ,Msg buffer pointer in SM_PARAM
//timout,if GSM has no ack,seth timeout number :(ms)
// return:0/1 reading failed /reading successful
**************************************************************/

char gsmSendMessage(char ui,SM_PARAM* pSrc,unsigned int timout)
{
	int nPduLength,i;		
	unsigned char nSmscLength;	
	int nLength;		
	char tpch[6],result;
	result=0;
        nPduLength = gsmPduLength(pSrc)/2;
	//send com
	int2str(nPduLength,tpch,3);
	strncpy(txbuf,"AT+CMGS=\0",9);
	strcat(txbuf,tpch);
	strcat(txbuf,"\r\0");
	sendATdata(ui,txbuf,"\r\n> ","ERROR\r\n",timout);	
	//send pdu
	nPduLength=gsmEncodePdu(pSrc,txbuf);
	tpch[0]=0x1a;
	tpch[1]='\0';
	strcat(txbuf, tpch);
	result=sendATdata(ui,txbuf,"\r\nOK\r\n","ERROR\r\n",timout);
	return(result);
}

/**************************************************************
//read message from gsm modle,index is set in pMsg->index
//  ui, uart0/1
// pMsg ,Msg buffer pointer in SM_PARAM
//timout,if GSM has no ack,seth timeout number :(ms)
// return:0/1 reading failed /reading successful
**************************************************************/
char gsmReadMessage(char ui,SM_PARAM* pMsg,char stat,unsigned int timout)
{
	int nLength,tmp;					
	char* ptr;
	int nMsg;				
	char err;
	char tpch[6];
	clr_rxbuf(ui);
	if(stat<10)int2str((int)stat,tpch,1);
	else if(stat<100)int2str((int)stat,tpch,2);		
        
	nMsg = 0;
	err=0;
	if(ui==0)ptr = u0rxbuf;
	else if(ui==1)ptr = u1rxbuf;
	
	strncpy(txbuf,"AT+CMGL=",8);
	strcat(txbuf,tpch);
	strcat(txbuf,"\r");
	send_n_byte(ui,txbuf,strlen(txbuf));
	while(wait_str(ui,"\r\nOK\r\n")==0)
		{
			if(wait_str(ui,"EEROR")!=0)
		         {
		         err=1;
		         flag.bit.gsmerror=1;
		          break;
		         }
		        if(timycount[ui]>=timout)
		        {
		        err=1;
		        flag.bit.gsmerror=1;
		        break;
		        }
		 }
		if(err==0)//
		{
		 if((ptr=strstr(ptr, "+CMGL:")) != 0)
		  {
			ptr += 6;		
			pMsg->index=*ptr;	
			ptr = strstr(ptr, "\r\n");	
			ptr += 2;		
			gsmDecodePdu(ptr, pMsg);
			nMsg++;		
			
		  }
		 
	        }
        return(nMsg);
}

char gsmReadMsg(char ui,SM_PARAM* pMsg,char *idx,unsigned int timout)
{
	int nLength,tmp;					
	char* ptr;
	int nMsg;				
	char err;
	nMsg = 0;
	err=0;
	if(ui==0)ptr = u0rxbuf;
	else if(ui==1)ptr = u1rxbuf;
	strncpy(txbuf,"AT+CMGR=",8);
	strcat(txbuf,idx);
	strcat(txbuf,"\r");
	send_n_byte(ui,txbuf,strlen(txbuf));
	while(wait_str(ui,"\r\nOK\r\n")==0)
		{
			if(wait_str(ui,"EEROR")!=0)
		         {
		         err=1;
		         flag.bit.gsmerror=1;
		          break;
		         }
		        if(timycount[ui]>=timout)
		        {
		        err=1;
		        flag.bit.gsmerror=1;
		        break;
		        }
		 }
		if(err==0)//
		{
		 if((ptr=strstr(ptr, "+CMGR:")) != 0)
		  {
			ptr += 6;		
			//pMsg->index=*ptr;	
			ptr = strstr(ptr, "\r\n");	
			ptr += 2;
			if(strncmp(ptr,"\r\n",2)!=0)
			{		
			gsmDecodePdu(ptr, pMsg);
			nMsg++;	
			}	
			
		  }
		 
	        }	
	 clr_rxbuf(ui);
         return(nMsg);
}

/**************************************************************
//read message from gsm modle,index is set in pMsg->index
//  ui, uart0/1
// index ,message index
//timout,if GSM has no ack,seth timeout number :(ms)
// return:0/1 reading failed /reading successful
**************************************************************/
char gsmDeleteMessage(char ui,char index,unsigned int timout)
{       char tpch[6];
	int nLength;	
	char result;
	result=0;
	clr_txbuf();	
	if(index<10)int2str((int)index,tpch,1);
	else if(index<100)int2str((int)index,tpch,2);					
	strncpy(txbuf,"AT+CMGD=",8);
	strcat(txbuf,tpch);
	strcat(txbuf,"\r");
	if(sendATdata(ui,txbuf,"OK\r\n","ERROR\r\r",timout)<=0)result=0;
	else result=1;
	return(result);
}

char gsmDeleteMsg(char ui,char *idx,unsigned int timout)
{      // char tpch[6];
	int nLength;	
	char result;
	result=0;			
	strncpy(txbuf,"AT+CMGD=",8);
	strcat(txbuf,idx);
	strcat(txbuf,"\r");
	if(sendATdata(ui,txbuf,"OK\r\n","ERROR\r\r",timout)<=0)result=0;
	else result=1;
	return(result);
}
int gsmPduLength(SM_PARAM* pSrc)
{
	int nLength;			
	int nDstLength;
	char buf[5];			
//no smsc
	nLength = strlen(pSrc->TPA);	// TP-DA length
	if(nLength & 1)nLength++;
	nDstLength =8;		 
	nDstLength += nLength;	 

	// TPDU
	nLength = strlen(pSrc->TP_UD);	// TP_UD LENGTH						
	if(pSrc->TP_DCS == GSM_7BIT)	
	{  	
					// 
		nLength = gsm7bitLength(pSrc->TP_UD, nLength+1) + 4;	// TP-DAP 2 PDU
		nDstLength += nLength*2;	// PDU
	}
	else if(pSrc->TP_DCS == GSM_UCS2)
	{
		nDstLength+=8;
		nDstLength+=nLength;
		
		
	}
	else
	{
		//8-bit
		nLength+=4;		// nLength
		nDstLength +=nLength*2;	
	}
	return(nDstLength);//byte lenth
}

int gsmBcd2Str(char *pSrc,char* pDst,int nSrcLength) //bcd length
{       int i;
	for(i=0; i<nSrcLength; i++)
	{      
		*pDst++=tabhex[*pSrc>>4];		
		*pDst++=tabhex[*pSrc & 0x0f];	
		 pSrc++;
	}

	*pDst = '\0';
	return(nSrcLength*2);  //pDst length
	
}
int gsmStr2Bcd(char *pSrc,char* pDst,int nSrcLength) //str length
{       int i;
        char tp;
	for(i=0; i<nSrcLength/2; i++)
	{   if(*pSrc>='0' && *pSrc<='9')
		{
		*pDst=(*pSrc-'0')<<4;
	    *pSrc++;
		*pDst|=(*pSrc-'0');
		 pSrc++;
		 pDst++;		
		}
	    else {
	    	  nSrcLength=0;
	    	  break;
	    	 } 
	}

	*pDst = '\0';
	return(nSrcLength/2);      //pDst length
	
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
2020国产成人综合网| 成人免费看的视频| 91蝌蚪porny九色| 精品噜噜噜噜久久久久久久久试看 | 日本大胆欧美人术艺术动态| 成人av免费网站| 精品久久久久久最新网址| 亚洲一区在线视频| 成人av电影免费观看| 精品久久久久久久久久久久久久久 | 美国一区二区三区在线播放| 91看片淫黄大片一级在线观看| 精品嫩草影院久久| 日本中文一区二区三区| 欧美丝袜丝nylons| 有坂深雪av一区二区精品| 成人一区二区三区| 久久久久久毛片| 久久激情综合网| 欧美一区二区三区四区在线观看 | 国产精品国产自产拍高清av | 久久99精品国产麻豆婷婷| 欧美日韩高清影院| 一区二区三区四区激情| av中文字幕在线不卡| 国产日韩精品视频一区| 精品一区二区免费看| 欧美一区二区成人| 五月婷婷激情综合网| 欧美日韩中文字幕一区二区| 亚洲精品成a人| 91浏览器在线视频| 亚洲人成网站色在线观看| 成人午夜短视频| 国产精品久久久久久久久久久免费看 | 欧美激情艳妇裸体舞| 国产成人综合网| 国产日韩欧美在线一区| 国产成人在线免费观看| 中文字幕乱码一区二区免费| 成人一区二区三区视频在线观看 | 亚洲精品在线三区| 久久 天天综合| 精品欧美一区二区久久| 极品美女销魂一区二区三区免费| 精品国产百合女同互慰| 国产一区在线不卡| 国产精品午夜免费| 波多野结衣精品在线| 亚洲区小说区图片区qvod| 色噜噜狠狠成人中文综合| 一区二区三区免费| 欧美猛男gaygay网站| 免费美女久久99| 久久免费美女视频| av网站免费线看精品| 亚洲欧美色一区| 欧美日韩久久一区二区| 日本aⅴ亚洲精品中文乱码| 欧美xxxx在线观看| 高清beeg欧美| 樱花草国产18久久久久| 欧美日韩精品一区二区三区四区| 日韩成人av影视| 国产亚洲精品精华液| 97久久精品人人爽人人爽蜜臀| 亚洲精品伦理在线| 欧美高清dvd| 国产一区二区女| ●精品国产综合乱码久久久久| 欧美午夜精品久久久久久孕妇 | 亚洲一区二区三区四区不卡| 欧美区一区二区三区| 激情久久五月天| 亚洲伦在线观看| 欧美一区二区三区在线看| 国产一区二区在线视频| 亚洲视频一区二区在线观看| 欧美日韩国产一区| 国产999精品久久久久久| 亚洲精品免费在线播放| 欧美一区二区三区在线观看 | 国产成人在线免费观看| 一区二区三区在线免费| 欧美一区二区三区人| 粉嫩aⅴ一区二区三区四区五区| 亚洲视频你懂的| 欧美电影精品一区二区| 91日韩在线专区| 美女精品一区二区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 蜜桃传媒麻豆第一区在线观看| 国产精品久久久久9999吃药| 欧美精品在欧美一区二区少妇| 国产ts人妖一区二区| 午夜久久福利影院| 国产精品久久久久久久久搜平片| 欧美乱熟臀69xxxxxx| 成人中文字幕电影| 蜜芽一区二区三区| 亚洲视频免费在线| xf在线a精品一区二区视频网站| 欧美丝袜第三区| 床上的激情91.| 久久精品99国产精品| 亚洲一区二区三区四区五区中文| 久久久91精品国产一区二区精品 | 欧美日本在线一区| 波多野结衣视频一区| 久久精品国产成人一区二区三区| 有码一区二区三区| 中文字幕欧美激情| 亚洲精品在线观看网站| 欧美日韩www| 91免费版在线| 成人手机电影网| 国产一区二区不卡| 日韩电影免费一区| 亚洲一级片在线观看| 国产精品色哟哟| 久久网站最新地址| 欧美一区二区久久久| 色综合激情久久| 成人爽a毛片一区二区免费| 精品无人码麻豆乱码1区2区| 午夜视频在线观看一区二区三区 | 久久亚洲综合av| 欧美一级片在线观看| 欧美日韩亚洲另类| 在线视频中文字幕一区二区| 成人app软件下载大全免费| 国产精品中文字幕日韩精品| 轻轻草成人在线| 午夜精品久久久久久久久久| 一区二区三区资源| 1区2区3区国产精品| 欧美国产激情二区三区 | 欧美色网站导航| 91女人视频在线观看| 波波电影院一区二区三区| 国产成人精品午夜视频免费| 韩国在线一区二区| 国精品**一区二区三区在线蜜桃| 免费在线欧美视频| 狂野欧美性猛交blacked| 奇米影视一区二区三区小说| 日本成人在线电影网| 日韩精品福利网| 日本不卡一区二区| 青娱乐精品视频在线| 日本欧美加勒比视频| 日韩高清一区在线| 久久精品国产亚洲5555| 美国毛片一区二区| 国产一区啦啦啦在线观看| 国产精品2024| 不卡大黄网站免费看| 99国产精品99久久久久久| av亚洲产国偷v产偷v自拍| 91网站最新网址| 欧美午夜电影一区| 欧美肥大bbwbbw高潮| 日韩一区二区精品在线观看| 日韩午夜精品视频| xfplay精品久久| 中文无字幕一区二区三区| 国产精品久久久久影院老司| 亚洲欧洲三级电影| 亚洲美女偷拍久久| 午夜免费久久看| 精品一区二区三区影院在线午夜| 国产一区二区精品在线观看| 福利一区福利二区| 色综合久久久久网| 在线播放91灌醉迷j高跟美女| 欧美一级日韩免费不卡| 久久久三级国产网站| 国产精品的网站| 亚洲h精品动漫在线观看| 蜜桃视频一区二区三区| 国产精品456| 色狠狠桃花综合| 欧美精品久久久久久久多人混战| 欧美成人三级电影在线| 日本一区二区三区久久久久久久久不| 综合自拍亚洲综合图不卡区| 亚洲午夜久久久久久久久久久 | 日韩在线观看一区二区| 捆绑紧缚一区二区三区视频| 丁香一区二区三区| 欧美天堂亚洲电影院在线播放| 日韩午夜精品视频| 国产精品国产精品国产专区不蜜| 一区二区三区不卡视频在线观看| 日日摸夜夜添夜夜添精品视频| 国产一区二区三区香蕉| 一本大道av伊人久久综合| 5858s免费视频成人| 中文字幕欧美日本乱码一线二线| 亚洲自拍偷拍网站|