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

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

?? tc35.c

?? 利用MSP430串口通信控制T35GSM模塊
?? C
字號:

#include "tc35.h"
// 初始化
int tc35_init(char pBuf[])
{
    pBuf[0] = 'A';
    pBuf[1] = 'T';
    pBuf[2] = 'E';
    pBuf[3] = '0';
    pBuf[4] = 13;

    return 5;
}

// 設置短信中心地址
int setCsca(char pBuf[])
{
    pBuf[0] = 'A';
    pBuf[1] = 'T';
    pBuf[2] = '+';
    pBuf[3] = 'C';
    pBuf[4] = 'S';
    pBuf[5] = 'C';
    pBuf[6] = 'A';
    pBuf[7] = '=';
    pBuf[8] = '+';
    pBuf[9] = '8';
    pBuf[10] = '6';
    pBuf[11] = '1';
    pBuf[12] = '3';
    pBuf[13] = '8';
    pBuf[14] = '0';
    pBuf[15] = '0';
    pBuf[16] = '2';
    pBuf[17] = '3';
    pBuf[18] = '0';
    pBuf[19] = '5';
    pBuf[20] = '0';
    pBuf[21] = '0';
    pBuf[22] = ',';
    pBuf[23] = '1';
    pBuf[24] = '4';
    pBuf[25] = '9';    
    pBuf[26] = 13;

    return 27;
}
//設置短消息格式
int setCmgf(char pBuf[])
{
    pBuf[0] = 'A';
    pBuf[1] = 'T';
    pBuf[2] = '+';
    pBuf[3] = 'C';
    pBuf[4] = 'M';
    pBuf[5] = 'G';
    pBuf[6] = 'F';
    pBuf[7] = '=';
    pBuf[8] = '0';   
    pBuf[9] = 13;

    return 10;
}
//刪除短消息
int deleteSms(char pBuf[],short int index)
{
    pBuf[0] = 'A';
    pBuf[1] = 'T';
    pBuf[2] = '+';
    pBuf[3] = 'C';
    pBuf[4] = 'M';
    pBuf[5] = 'G';
    pBuf[6] = 'D';
    pBuf[7] = '=';
    pBuf[8] = (char)((index >> 8) & 0xff + 0x30);
    pBuf[9] = (char)(index & 0xff + 0x30);   
    pBuf[10] = 13;

    return 11;
}
//接收短消息
void revSms(char pBuf[],char pOut[])
{
    pBuf[0] = 'A';
    pBuf[1] = 'T';
    pBuf[2] = '+';
    pBuf[3] = 'C';
    pBuf[4] = 'M';
    pBuf[5] = 'G';
    pBuf[6] = 'R';
    pBuf[7] = '=';
    pBuf[8] = (char)((index >> 8) & 0xff + 0x30);
    pBuf[9] = (char)(index & 0xff + 0x30);   
    pBuf[10] = 13;

    return 11;
}
//發送短消息
void sendSms(char pPhone[],int phonelen,char pData[],int nLen,
            int *nTXLen1,int *nTXLen2,char pOut1[],char pOut2)
{
    char strHead[18] = {'0','8','9','1','6','8',
                        '3','1','0','8','2','0',
                        '0','3','0','5','F','0'};
    char chrInfo[6] = {'1','1','0','0','0','B'};
    int nLen_temp;
    int nContent_Len;
    int nTempLen;
    int nOff;
    int nOffset;
    char chrTemp[100];
    char chrTmp[100];
    char pBuf[200];
    char phoneTemp[20];
    char nTemp[100];
    char Len[1];
    int i;
    int n;

    nOff = 0;
    nOffset = 0;
    for(i = 0;i < phonelen;i++)
    {
    	chrTmp[i] = pPhone[i];
    }
    chrTmp[phonelen] = 'F';
    phonelen += 1;
    // 將電話號碼按照規范的順序作成
    n = 0;
    for(i = 0;i < phonelen / 2;i++)
    {
    	phoneTemp[n++] = chrTmp[2 * i + 1];
    	phoneTemp[n++] = chrTmp[2 * i];
    }
    copy(chrTemp,0,chrInfo,0,6);
    nOff = 6;
    chrTemp[nOff] = '8';
    nOff += 1;
    chrTemp[nOff] = '1';
    nOff += 1;
    //設置電話號碼
    copy(chrTemp,nOff,phoneTemp,0,phonelen);
    nOff += phonelen;
    chrTemp[nOff] = '0';
    nOff += 1;
    chrTemp[nOff] = '0';
    nOff += 1;
    
    nContent_Len = nLen;
    // 設置編碼類型
    chrTemp[nOff] = '0';
    nOff += 1;
    chrTemp[nOff] = '0';
    nOff += 1;
    
    Len[0] = nLen;
    for(i = 0;i < 10;i++)
    {
    	chrTmp[i] = 0;
    }
    ByteToChar(Len,chrTmp,1);
    chrTemp[nOff] = 'A';
    nOff += 1;
    chrTemp[nOff] = 'A';
    nOff += 1;
    copy(chrTemp,nOff,chrTmp,0,2);
    nOff += 2;
    nLen_temp = nOff;
    nLen_temp += nContent_Len;
    
    //獲得長度的字符數組
    nTempLen = IntToChar(nLen_temp,chrTmp);
    //封裝長度信息
    nTemp[0] = 'A';
    nTemp[1] = 'T';
    nTemp[2] = '+';
    nTemp[3] = 'C';
    nTemp[4] = 'M';
    nTemp[5] = 'G';
    nTemp[6] = 'S';
    nTemp[7] = '=';
    nOffset = 8;
    //長度
    for(i = 0;i < nTempLen;i++) 
    {
        nTemp[nOffset] = chrTmp[i]; 
        nOffset += 1;   
    }	
    nTemp[nOffset] = 13;
    for(i = 0; i < nOffset;i++)
    {
    	pOut1[i] = nTemp[i];
    }
    *nTXLen1 = nOffset;
    
    //封裝內容數據
    copy(pOut2,0,strHead,0,18);
    nOffset = 18;
    copy(pOut2,nOffset,0,chrTemp,nOff);
    nOffset += nOff;
    Encode(pData,pBuf,nLen);
    ByteToChar(pBuf,chrTmp,nLen);
    copy(pOut2,nOffset,chrTmp,0,(2 * nLen));
    nOffset += (2 * nLen);
    pOut2[nOffset] = 26;
    
    *nTXLen2 = nOffset;
}
//將源數組的內容拷貝到目的數組
void copy(char pDest[],int nOrg,char pOrg[],int nStart,int nLen)
{
    int i;
    for(i = 0;i < nLen;i++)
    {
    	pDest[nOrg + i] = pOrg[i + nStart];
    }
}
// 將字節處理成字符串
void ByteToChar(char nInPut[],char Out[],int nLen)
{
    int i;
    char chrTemp;
    
    for(i = 0;i < nLen;i++)
    {
        // 高字節			
        chrTemp = (char)((nInPut[i] >> 4) & 0x0f);
        if(chrTemp >= 0 && chrTemp <= 9) chrTemp += 48;
        else chrTemp += 55;
        Out[i] = chrTemp;
    
        // 低字節
        chrTemp = (char)(nInPut[i] & 0x0f);
        if(chrTemp >= 0 && chrTemp <= 9) chrTemp += 48;
        else chrTemp += 55;
        Out[i] = chrTemp;
    }
    
    return;
}
// 數的范圍為250以內
int IntToChar(int n,char Out[])
{
    int i;
    char chrTemp1;
    char chrTemp2;
    char chrTemp3;
    int nLen;

    chrTemp1 = n / 100;
    chrTemp2 = (n - chrTemp1 * 100) / 10;
    chrTemp3 = n - chrTemp1 * 100 - chrTemp2 * 10;
    if(chrTemp1 != 0) 
    {
    	nLen = 3;
        Out[0] = chrTemp1 + 0x30;
        Out[1] = chrTemp2 + 0x30;
        Out[2] = chrTemp3 + 0x30;
    }
    else
    {
    	if(chrTemp2 != 0)
    	{
    	    nLen = 2;
            Out[0] = chrTemp2 + 0x30;
            Out[1] = chrTemp3 + 0x30;
    	}
    	else
    	{
    	    nLen = 1;
            Out[0] = chrTemp3 + 0x30;
    	}
    }

    return nLen;
}
// 編碼函數
void Encode(char in[],char out[],int nLen)
{
    int nOrigin = 0;
    int nCode = 0;
    while(true)
    {
        if(nOrigin >= nLen) break;
        out[nCode] = in[nOrigin];

        if((nOrigin + 1) >= nLen) break;		    
        out[nCode] |= (byte)((in[nOrigin + 1] & 0x01) << 7);
        out[nCode + 1] = (byte)((in[nOrigin + 1] >> 1) & 0xff);	

        if((nOrigin + 2) >= nLen) break;
        out[nCode + 1] |= (byte)((in[nOrigin + 2] & 0x03) << 6);
        out[nCode + 2] = (byte)((in[nOrigin + 2] >> 2) & 0xff);

        if((nOrigin + 3) >= nLen) break;
        out[nCode + 2] |= (byte)((in[nOrigin + 3] & 0x07) << 5);
        out[nCode + 3] = (byte)((in[nOrigin + 3] >> 3) & 0xff);

        if((nOrigin + 4) >= nLen) break;
        out[nCode + 3] |= (byte)((in[nOrigin + 4] & 0x0f) << 4);
        out[nCode + 4] = (byte)((in[nOrigin + 4] >> 4) & 0xff);

        if((nOrigin + 5) >= nLen) break;
        out[nCode + 4] |= (byte)((in[nOrigin + 5] & 0x1f) << 3);
        out[nCode + 5] = (byte)((in[nOrigin + 5] >> 5) & 0xff);

        if((nOrigin + 6) >= nLen) break;
        out[nCode + 5] |= (byte)((in[nOrigin + 6] & 0x3f) << 2);
        out[nCode + 6] = (byte)((in[nOrigin + 6] >> 6) & 0xff);

        if((nOrigin + 7) >= nLen) break;
        out[nCode + 6] |= (byte)((in[nOrigin + 7] & 0x7f) << 1);

        nCode += 7;
        nOrigin += 8;
    }
}
int AnalyseSms(char in[],int nLen,char chrPhone[],char chrMessage[])
{
    char Phone[20];
    int phone_len;
    char chrTemp[200];
    char chrMessage[140];
    int nLen_temp;
    int nTempLen;
    int nOffset;
    int nOff;
    char chrTmp;
    int n;
    int nContent_Len;
    byte content[140];
    
    //去掉+CMGR:信息
    nLen_temp = nLen - 6;
    nOffset = 6;
    copy(chrTemp,0,in,nOffset,nLen_temp);
    
    if(nLen_temp < 20) return -1;
    chrTmp = chrTemp[0];
    if(chrTmp == '1')//新消息
    {    	
        chrTmp = strTemp[3];
        if(chrTemp == '1')// 長度為三個字符
        {
    	    nTempLen = (strTemp[3] - 48) * 100 + (strTemp[4] - 48) * 10
    	               + (strTemp[4] - 48);
    	    if(nLen_temp >= 26) 
    	    {    	        
    	        nLen_temp -= 26;
    	        nOffset += 26;
    	        copy(chrTemp,0,in,nOffset,nLen_temp); 
    	    }     
    	    else return -1;      	    	            	
        }// 長度為兩個字符
        else			
        {
    	    nTempLen = (strTemp[3] - 48) * 10 + (strTemp[4] - 48);
    	    if(nLen_temp >= 25)
    	    {    	        
    	        nLen_temp -= 25;
    	        nOffset += 25;
    	        copy(chrTemp,0,in,nOffset,nLen_temp);
    	    }
    	    else return -1;
        }
        //取得電話號碼
        int nPhone_Len = 0;
        if(nLen_temp >= 18)
        {
            copy(Phone,0,chrTemp,0,18);
            phone_len = (int)(Phone[1] - 48);
            copy(chrPhone,0,Phone,4,14);
        }
        else return -1; 
        //獲得電話號碼的正確順序 
        copy(Phone,0,chrPhone,0,14);
        n = 0;
        for(i = 0;i < 7;i++)
        {
    	    chrPhone[n++] = Phone[2 * i + 1];
    	    chrPhone[n++] = Phone[2 * i];
        }
        
        if(nLen_temp >= 20)
        {            	    	            
            nLen_temp -= 20;
    	    nOffset += 20;
    	    copy(chrTemp,0,in,nOffset,nLen_temp);
        }
        else return -1; 
        if(nLen_temp >= 16)
        {            
            nLen_temp -= 16;
    	    nOffset += 16;
    	    copy(chrTemp,0,in,nOffset,nLen_temp);
        }	
        else return -1; 
        // 取出內容的長度
        nContent_Len = 0;
        if(nLen_temp >= 2)
        {
            if((strTemp[1] >= 48) && (strTemp[1] <= 57))
                nContent_Len = (strTemp[0] - 48) * 16 + (strTemp[1] - 48);
            else if(strTemp[1] >= 65 && strTemp[1] <= 70)	
                nContent_Len = (strTemp[0] - 48) * 16 + (strTemp[1] - 55);
            else if(strTemp[1] >= 97 && strTemp[1] <= 102)	
                nContent_Len = (strTemp[0] - 48) * 16 + (strTemp[1] - 87);   
        }
        else return -1; 
        if(strTemp.length() >= 2)
        {
            nLen_temp -= 2;
    	    nOffset += 2;
    	    copy(chrTemp,0,in,nOffset,nLen_temp);
        }
        else return -1;
        
        CharToByte(strTemp,content,nLen_temp);
        nLen_temp /= 2;
        n = Decode(content,chrMessage,nLen_temp);
    }
    return n;
    
}
int FindERROR(char in[],int nLen)
{
    int nOffset,i;
    nOffset = -1;if(nLen < 5) return nOffset;
    for(i = 0;i < nLen;i++)
    {
    	if((in[i] == 'R') && (in[i - 1] == 'O') && (in[i - 2] == 'R') 
    	   && (in[i - 3] == 'R') && (in[i - 4] == 'E')) 
    	{
    	    nOffset = i - 4;
    	    break;
    	}    	
    }
    return nOffset;
}
int FindCMGR(char in[],int nLen)
{
    int nOffset,i;
    nOffset = -1;
    if(nLen < 5) return nOffset;
    for(i = 0;i < nLen;i++)
    {
    	if((in[i] == 'R') && (in[i - 1] == 'G') && (in[i - 2] == 'M') 
    	   && (in[i - 3] == 'C') && (in[i - 4] == '+')) 
    	{
    	    nOffset = i - 4;
    	    break;
    	}    	
    }
    return nOffset;
}
int FindOK(char in[],int nLen)
{
    int nOffset,i;
    nOffset = -1;
    if(nLen < 2) return nOffset;
    for(i = 0;i < nLen;i++)
    {
    	if((in[i] == 'K') && (in[i - 1] == 'K')) 
    	{
    	    nOffset = i - 1;
    	    break;
    	}    	
    }
    return nOffset;
}
void CharToByte(char in[],char out[],int nLen)
{
    char chrHi,chrLow;
    
    for(int i = 0;i < nLen / 2;i++)
    {
        chrHi = in[2 * i];			
        if(chrHi >= 48 && chrHi <= 57)
            chrHi = (char)(chrHi - 48);
        else if(chrHi >= 65 && chrHi <= 70)	
            chrHi = (char)(chrHi - 55);
        else if(chrHi >= 97 && chrHi <= 102)	
            chrHi = (char)(chrHi - 87); 
		
        chrLow = in[2 * i + 1];
        if(chrLow >= 48 && chrLow <= 57)
            chrLow = (char)(chrLow - 48);
        else if(chrLow >= 65 && chrLow <= 70)	
            chrLow = (char)(chrLow - 55);
        else if(chrLow >= 97 && chrLow <= 102)	
            chrLow = (char)(chrLow - 87);
        
        out[i] = (byte)(chrHi * 16 + chrLow);
    }

    return;
}
int Decode(char in[],char out[],int nLen)
{
    int nLenTemp = byteStream.length;
    int nOrigin = 0;
    int nCode = 0;
    nLenTemp = nLen * 8 / 7;           
    
    while(true)
    {
    	if(nOrigin >= nLen) break;
    	out[nCode] = (char)(in[nOrigin] & 0x7f);
    	
    	if((nOrigin + 1) >= nLen) break;
    	out[nCode + 1] = (char)((in[nOrigin + 1] & 0x3f) << 1);
    	out[nCode + 1] += (char)((in[nOrigin] & 0x80) >> 7);
    	
    	if((nOrigin + 2) >= nLen) break;
    	out[nCode + 2] = (char)((in[nOrigin + 2] & 0x1f) << 2);
    	out[nCode + 2] += (char)((in[nOrigin + 1] & 0xc0) >> 6);
    	
    	if((nOrigin + 3) >= nLen) break;
    	out[nCode + 3] = (char)((in[nOrigin + 3] & 0x0f) << 3);
    	out[nCode + 3] += (char)((in[nOrigin + 2] & 0xe0) >> 5);
    	
    	if((nOrigin + 4) >= nLen) break;
    	out[nCode + 4] = (char)((in[nOrigin + 4] & 0x07) << 4);
    	out[nCode + 4] += (char)((in[nOrigin + 3] & 0xf0) >> 4);
    	
    	if((nOrigin + 5) >= nLen) break;
    	out[nCode + 5] = (char)((in[nOrigin + 5] & 0x03) << 5);
    	out[nCode + 5] += (char)((in[nOrigin + 4] & 0xf8) >> 3);
    	
    	if((nOrigin + 6) >= nLen) break;
    	out[nCode + 6] = (char)((in[nOrigin + 6] & 0x01) << 6);
    	out[nCode + 6] += (char)((in[nOrigin + 5] & 0xfc) >> 2);
    	            	            	
    	out[nCode + 7] = (char)((in[nOrigin + 6] & 0xfe) >> 1);
    	
    	nCode += 8;
    	nOrigin += 7;
    }
    return nLenTemp;
}











?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一二三四高清不卡| 激情综合网av| 久久国产精品72免费观看| 成人免费看的视频| 欧美猛男超大videosgay| 国产精品乱码一区二区三区软件 | 国产精品一区三区| 色国产精品一区在线观看| 国产日韩欧美综合一区| 蜜桃视频一区二区三区| 色欧美乱欧美15图片| 国产精品网站在线观看| 激情五月激情综合网| 欧美人妇做爰xxxⅹ性高电影| 国产精品视频一二| 国产一区二区三区免费看 | 久久精品久久99精品久久| 91在线播放网址| 国产三级精品三级在线专区| 老色鬼精品视频在线观看播放| 欧美日韩中文字幕精品| 亚洲人成精品久久久久| 欧美这里有精品| 中文字幕亚洲视频| 丰满亚洲少妇av| 国产欧美日韩不卡免费| 国产高清精品在线| 国产亚洲成年网址在线观看| 国产在线播精品第三| 久久一夜天堂av一区二区三区| 九色综合狠狠综合久久| 日韩三区在线观看| 久久疯狂做爰流白浆xx| 日韩欧美中文字幕精品| 男人的j进女人的j一区| 日韩欧美电影一区| 韩国v欧美v日本v亚洲v| 国产欧美日产一区| 色综合久久综合中文综合网| 亚洲精品成人在线| 欧美乱熟臀69xxxxxx| 免费观看91视频大全| 久久午夜羞羞影院免费观看| 国产一区二区三区免费看| 国产精品视频九色porn| 99riav一区二区三区| 一区2区3区在线看| 欧美一区永久视频免费观看| 精品制服美女久久| 国产精品你懂的在线| 色噜噜狠狠成人中文综合| 亚洲成人av一区二区| 欧美va亚洲va在线观看蝴蝶网| 在线视频国内一区二区| 香蕉久久夜色精品国产使用方法 | 中文字幕乱码一区二区免费| 91色乱码一区二区三区| 天天综合网天天综合色| 精品久久国产字幕高潮| 成人激情文学综合网| 亚洲韩国精品一区| 日韩精品在线一区| 91亚洲大成网污www| 日韩经典中文字幕一区| 久久精品欧美日韩精品| 在线日韩av片| 国产一区二区三区久久悠悠色av| 综合亚洲深深色噜噜狠狠网站| 欧美性淫爽ww久久久久无| 国产在线观看一区二区| 亚洲综合激情网| 久久久久久综合| 7799精品视频| av欧美精品.com| 美女网站视频久久| 亚洲人成网站精品片在线观看| 精品国产伦一区二区三区观看方式| 国产99久久久久| 免费观看91视频大全| 亚洲码国产岛国毛片在线| 日韩视频123| 精品视频一区二区不卡| 成人午夜av在线| 久久se精品一区精品二区| 一区二区三区四区蜜桃| 国产婷婷一区二区| 欧美一区二区三区在线视频| 97久久精品人人澡人人爽| 国内精品视频一区二区三区八戒 | 国产精品综合av一区二区国产馆| 亚洲综合视频网| 亚洲丝袜自拍清纯另类| 久久久综合激的五月天| 日韩视频免费观看高清完整版在线观看 | 日本电影欧美片| 国产麻豆一精品一av一免费| 天堂午夜影视日韩欧美一区二区| 自拍偷在线精品自拍偷无码专区| 欧美精品一区二区久久婷婷| 欧美猛男男办公室激情| 欧洲激情一区二区| 一本久道中文字幕精品亚洲嫩| 国产福利精品一区二区| 国产综合色产在线精品| 蜜臀久久99精品久久久久宅男| 亚洲国产精品一区二区www| 樱花影视一区二区| 亚洲乱码日产精品bd| 国产精品灌醉下药二区| 国产精品毛片久久久久久| 久久精品在这里| 久久久五月婷婷| 国产婷婷色一区二区三区| 久久久国产一区二区三区四区小说 | 欧美日韩国产精品成人| 欧美在线免费观看视频| 色8久久人人97超碰香蕉987| 91色九色蝌蚪| 欧美日韩色一区| 欧美二区三区的天堂| 欧美一区二区在线免费播放| 欧美一级欧美三级在线观看| 日韩欧美国产麻豆| 精品免费日韩av| 日本一区二区成人在线| 国产精品久久久久影院亚瑟| 亚洲欧美乱综合| 亚洲国产精品人人做人人爽| 奇米精品一区二区三区四区| 六月丁香婷婷久久| 成人中文字幕电影| 色婷婷久久一区二区三区麻豆| 欧美三级乱人伦电影| 日韩欧美一区二区久久婷婷| 久久免费偷拍视频| 国产精品二三区| 天使萌一区二区三区免费观看| 美女网站一区二区| 不卡视频免费播放| 欧美日韩免费观看一区二区三区| 欧美一区二区大片| 久久青草国产手机看片福利盒子| 国产精品另类一区| 亚洲成人激情社区| 精品无人码麻豆乱码1区2区| 成年人网站91| 欧美一级日韩一级| 国产精品传媒入口麻豆| 亚洲一卡二卡三卡四卡无卡久久| 免费精品视频在线| 97久久精品人人爽人人爽蜜臀| 欧美日韩国产另类不卡| 中文字幕电影一区| 香蕉成人啪国产精品视频综合网| 韩国精品免费视频| 欧美性大战xxxxx久久久| 久久久久久久久久久久电影 | 欧美色成人综合| 久久精品人人做| 午夜视频在线观看一区二区三区| 国产一区二三区好的| 欧美日韩精品一区二区三区四区 | 三级久久三级久久| 国产aⅴ精品一区二区三区色成熟| 欧美三级日韩在线| 中文字幕制服丝袜成人av | 国产欧美日韩在线看| 亚洲aaa精品| 99re这里都是精品| 久久精品人人爽人人爽| 日韩福利电影在线| 日本高清免费不卡视频| 国产精品美女久久久久aⅴ国产馆| 三级精品在线观看| 在线国产亚洲欧美| 中文字幕视频一区二区三区久| 久久av资源网| 欧美一区二区视频在线观看| 亚洲综合一区在线| 色妹子一区二区| 亚洲欧洲成人av每日更新| 国产在线国偷精品产拍免费yy| 日韩一区二区在线观看视频| 亚欧色一区w666天堂| 91极品美女在线| 国产精品久久99| 成人午夜激情视频| 国产三区在线成人av| 国产福利精品导航| 久久久久久久一区| 国产福利电影一区二区三区| 亚洲精品一区二区三区影院| 日本欧美一区二区三区乱码| 欧洲av在线精品| 亚洲综合成人在线视频| 91麻豆精东视频| 一区二区三区四区精品在线视频| 91亚洲国产成人精品一区二区三| 国产精品三级av在线播放| www.亚洲精品|