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

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

?? 77e516.txt

?? 77e516,雙串行口通訊
?? TXT
字號:
 C51編程:請教:W77E516芯片,為何我的串口只能一次接收1個字節? 
串口0使用定時器1做波特率發生器,串口采用中斷方式接收,但是用串口調試助手只能一
次發一個字節,如果發兩個以上就會有問題,下面是我的程序:
void InitSeriesPort(void)
 {
        ES = 0;//使串口0不能中斷
        IP |= 0x10;//將串口0設為高優先級
        T2CON = 0x00;//串行口0使用定時器1做波特率發生器    
        TL1 = 0xFD; //11.0592MHz :9600
        TH1 = 0xFD;//TH1 = 0xdc;//TH1 = 0xFF;            
 }
void SeriesPort (void) interrupt 4 using 2
{    
    if(RI)
    {
          ReceiveData[g_zi]=SBUF;
          En4850=1; TI=0;SBUF=ReceiveData[g_zi]; while(TI==0);TI=0;En4850=0; 
          }
         RI=0;
}
void main() 
{ TMOD=0x22; /*定時器1為工作模式2(8位自動重裝),0為模式2(8位自動重裝) */ 
SCON=0x40;//串行口工作于10位異步模式1
PCON=0;
InitSeriesPort();
//SM2=0;
ET1=0;//定時器1中斷
ES = 1;//EA = 1;
TR1=1;//啟動定時器1
SendData();
RI=0;REN=1;
PT0=1;
EA=1;
}

各位大俠,幫我分析分析吧!



大家幫幫忙吧!謝謝了。 [kenn654321] 2006-7-21 17:08:17



你的本來就一次只能接受發送一個阿 [lk@422] 2006-7-21 17:10:40



請問:但是我如果用串口調試助手一次發一串數據,它只能接收到第一個,后面就亂了。 [kenn654321] 2006-7-21 17:18:58



樓主,能不能幫我看看我的程序為什么會不能接收一串數據?實在不知道該怎么辦了! [kenn654321] 2006-7-21 17:29:18



你的程序發了一次數據,但沒有發中斷處理 [yunwei] 2006-7-21 19:00:30
主程序沒有等待,不知道運行到哪去了


我有串口中斷處理啊,你說的是定時器1的中斷處理嗎?這個不要也可以啊。能講的再清楚點嗎? [kenn654321] 2006-7-22 11:48:39



好像這里錯了! [space005] 2006-7-22 12:31:23
“while(TI==0);TI=0;En4850=0;”應該該成“while(TI==1);TI=0;En4850=0;”


這里沒錯,我總感覺時序上有問題。 [kenn654321] 2006-7-22 13:54:31



大概跑飛了 [ssaassa] 2006-7-22 16:18:29
主程序么sjmp $,串口中斷reti后會跑飛俄大概~~~
開了timer1,要寫中斷處理,不然可能也會跑飛~~~


我已經把定時器1的中斷給關了,可是還是只能用串口調試助手1個字節1個字節發送 [kenn654321] 2006-7-22 17:21:54



這里沒有問題 [liuhuiwang] 2006-7-22 17:43:24



if(RI)改while(RI), RI=0放在while的第一行再送資料, 不過在中斷內等發送完在離開不太好啊! [C.C.] 2006-7-22 17:57:13



你看看你的程序的問題 [liuhuiwang] 2006-7-22 18:03:05
void SeriesPort (void) interrupt 4 using 2{        if(RI)
    {          ReceiveData[g_zi]=SBUF;          En4850=1; 
TI=0;SBUF=ReceiveData[g_zi]; while(TI==0);TI=0;En4850=0;           }         
RI=0;}
非常明顯的錯誤
應該為:
void SeriesPort (void) interrupt 4 using 2
{        
if(RI)    
{          ReceiveData[g_zi]=SBUF; 
RI = 0;
En4850=1;
 TI=0;
SBUF=ReceiveData[g_zi]; 
while(TI==0);
TI=0;
En4850=0;           
}         


這里我改了,但是好象還是不能用串口調試助手一次發一串數據,我看了一下,好象單片機串口接收的數據不能正常存到receivedata數組中。 [kenn654321] 2006-7-22 18:19:36



g_zi沒加1 [C.C.] 2006-7-22 18:33:07



把1 加上也不行,我郁悶壞了 [kenn654321] 2006-7-22 18:36:22



你把最後測試的程序貼上來, 最好是完整的 [C.C.] 2006-7-22 18:44:46



請看里面 [kenn654321] 2006-7-22 18:57:35
void SeriesPort (void) interrupt 4 using 0
{    ES=0;
    if(RI)
    {
           ReceiveData[g_zi]=SBUF;
          {En4850=1; TI=0;SBUF=ReceiveData[g_zi]; whil(TI==0);TI=0;En4850=0; } 
           g_zi++; 
          if(g_zi>=30)g_zi=0;
          RI=0; 
          } 
 }
    else TI=0;  
     ES=1;
}

這個程序主要是想單片機串口接收到什么數據,讓它把接收到的數據發出來,但是我用軟
件調試時發現receivedata的數組里總是0,接硬件后用串口調試助手1個字節一個字節個單
片機的串口發數據,單片機可以準確無誤的給我返回我剛發的數據,可是發2個以上的字節
就出現亂碼,{En4850=1; TI=0;SBUF=ReceiveData[g_zi]; while
(TI==0);TI=0;En4850=0; } 我以前這樣在中斷中用過,所以這里應該沒錯。數組我是這樣
定義的:
static unsigned char  g_zi,ReceiveData[40];


我的所有程序在下面:
#include <reg52.h> 

sbit BT_SND =P1^5; 
sbit BT_REC =P1^4; 

sbit En4851 = P1^1;        //UART1 enabel H---SEND,L---RECEIVE
sbit En4850 =  P3^2;     //UART0 enabel

#define F_TM F0
#define TIMER0_ENABLE TL0=TH0; TR0=1; 
#define TIMER0_DISABLE TR0=0;

#define OSCU 1 //1 11.0592  0 22.1184 

static unsigned char idata g_zi,ReceiveData[40];
bit ReceiveFinish;


sbit ACC0= ACC^0; 
sbit ACC1= ACC^1; 
sbit ACC2= ACC^2; 
sbit ACC3= ACC^3; 
sbit ACC4= ACC^4; 
sbit ACC5= ACC^5; 
sbit ACC6= ACC^6; 
sbit ACC7= ACC^7;



void IntTimer0() interrupt 1 
{ 
F_TM=1; 
} 
//發送一個字符 
void PSendChar(unsigned char inch) 
{ 

ACC=inch;

F_TM=0; 
BT_SND=0; //start bit 
TIMER0_ENABLE; //啟動 
while(!F_TM);
 
BT_SND=ACC0; //先送出低位 
F_TM=0; 
while(!F_TM);



BT_SND=ACC1; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC2; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC3; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC4; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC5; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC6; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC7; 
F_TM=0; 
while(!F_TM);



BT_SND=1; 
F_TM=0; 
while(!F_TM);


TIMER0_DISABLE; //停止timer 

} 

//接收一個字符 
unsigned char PGetChar() 
{ 
TL0=TH0;
TIMER0_ENABLE; 

F_TM=0; 
while(!F_TM); //等過起始位
ACC0=BT_REC;

F_TM=0; 
while(!F_TM); 
ACC1=BT_REC;

F_TM=0; 
while(!F_TM); 
ACC2=BT_REC;

F_TM=0; 
while(!F_TM); 
ACC3=BT_REC;

F_TM=0; 
while(!F_TM); 
ACC4=BT_REC;



F_TM=0; 
while(!F_TM); 
ACC5=BT_REC;



F_TM=0; 
while(!F_TM); 
ACC6=BT_REC;



F_TM=0; 
while(!F_TM); 
ACC7=BT_REC;

F_TM=0;

while(!F_TM) 
{ 
if(BT_REC) 
{ 
break; 
} 
} 
TIMER0_DISABLE; //停止timer 
return ACC; 


} 
//檢查是不是有起始位 
bit StartBitOn() 
{ 
return (BT_REC==0);

} 
/*上面為模擬串口程序*/

/*下面為串口與主機的無線通訊程序*/
void SeriesPort (void) interrupt 4 using 0
{    ES=0;
    if(RI)
    {
          ReceiveData[g_zi]=SBUF;
          {En4850=1; TI=0;SBUF=ReceiveData[g_zi]; whil(TI==0);TI=0;En4850=0; } 
          g_zi++; 
          if(g_zi==1) {if(ReceiveData[0]!=0xFE) g_zi=0;    }
          if(g_zi==2) { if(ReceiveData[1]!=0xF8) g_zi=0;}
          if(g_zi==3) { if(ReceiveData[2]>36) g_zi=0;}
          if(g_zi==(ReceiveData[2]+2)) {ReceiveFinish=1;g_zi=0; } 
          RI=0;                    
                                
    }
    else TI=0;  
     ES=1;
}

/*
void Timer1 (void) interrupt 3 using 1
//void Timer1 (void) interrupt 3 using 2
{    
      #if OSCU    
      {  TH1 = 0xff;   //time=50ms, Fosc=11.0592MHz
         TL1 = 0xdc;

      }
      #else
      {    
         TH1 = 0x4B;  //time=25ms, Fosc=22.1184MHz
         TL1 = 0xFF;
      }    
      #endif
 
}
*/
void InitSeriesPort(void)
 {
        ES = 0;//使串口0不能中斷
        PS = 0;//將串口0設為低優先級
        RCLK=0;TCLK=0;//串行口0使用定時器1做波特率發生器

        #if OSCU 
        {   TL1 = 0xFD; //11.0592MHz :9600
            TH1 = 0xFD;//TH1 = 0xdc;//TH1 = 0xFF;
        }
        #else
        {        
            TL1 = 0xFA;    //22.1184MHz  :9600
            TH1 = 0xFA;//TH1 = 0xFF;        
        }
        #endif
 }

void SendData(void) 
{
    unsigned char idata i;
    unsigned char  zd[2];
    ES = 0;
    En4850=1; //允許發送
    TI=0;
    for(i=0;i<2;i++)
    {
        zd[i]=0x50+i;
        SBUF=zd[i];
        while(TI==0);
        TI=0;
    }
  ES = 1;  En4850=0;//允許接收 
}





void main() 
{ 
unsigned char gch,i;

ReceiveFinish=0;
TMOD=0x22; /*定時器1為工作模式2(8位自動重裝),0為模式2(8位自動重裝) */ 
SCON=0x40;//串行口0工作于10位異步模式1
PCON=0;
InitSeriesPort();
ET1= 0;//關定時器1中斷
TR1=1;//啟動定時器1
SendData();
RI=0;REN=1;


PT0=1; 
TR0=0; //在發送或接收才開始使用 
TF0=0; 
TH0=(256-96); //9600bps 就是 1000000/9600=104.167微秒 執行的 timer是
104.167*11.0592/12= 96  

TL0=TH0; 
ET0=1; 
EA=1;

PSendChar(0x55);
PSendChar(0x66);
PSendChar(0x77);
PSendChar(0x88);
g_zi=0;
while(1) 
    {
if(ReceiveFinish)
{ReceiveFinish=0;
for(i=0;i<=(ReceiveData[2]+2);i++)
{En4850=1; TI=0;SBUF=ReceiveData[g_zi]; while(TI==0); TI=0;En4850=0; } 
}

if(StartBitOn()) 
           { 
           gch=PGetChar(); 
           PSendChar(gch);
           } 
      }
}



忘了問你該不會是485吧? 如果是那當然不行, 因為485為half duplex [C.C.] 2006-7-22 19:05:30



我用的是半雙工的485,請問:那我怎么用串口調試助手一次發一串數據呢? [kenn654321] 2006-7-22 19:11:14



半雙工不可以收發同時, 你必須改成全部收完再發送, 只是收多少算收完就必須有協議才行 [C.C.] 2006-7-22 19:17:57



這個我有協議,在程序里也可以看到,當receivefished=1時結束。 [kenn654321] 2006-7-22 19:33:48



請教:如果我程序里的方法不行,怎樣才能把它改成全部收完呢? [kenn654321] 2006-7-22 19:37:55



不要在串口中斷發送資料, 將主程序改一下(你怎麼兩個地方都有發送啊?) [C.C.] 2006-7-22 19:57:27
if(ReceiveFinish)
{ReceiveFinish=0;
for(i=0;i<=(ReceiveData[2]+2);i++)
{En4850=1; TI=0;SBUF=ReceiveData[i]; while(TI==0); TI=0;En4850=0; } 
}



好的,我現在就試試。 [kenn654321] 2006-7-22 20:00:47



把串口中斷的 else TI=0; 和 ES=0, ES=1 拿掉 [C.C.] 2006-7-22 20:07:07



請C.C.看里面 [kenn654321] 2006-7-22 20:13:03
我把中斷中的發送數據刪除掉只在后面發,但是軟件調試時receivedata的數組里一直都是
0,好象存不進去,請問你以前遇到過這種情況嗎?你可以把我的程序用軟件調試一下。
#include <reg52.h> 

sbit BT_SND =P1^5; 
sbit BT_REC =P1^4; 

sbit En4851 = P1^1;        //UART1 enabel H---SEND,L---RECEIVE
sbit En4850 =  P3^2;     //UART0 enabel

#define F_TM F0
#define TIMER0_ENABLE TL0=TH0; TR0=1; 
#define TIMER0_DISABLE TR0=0;

#define OSCU 1 //1 11.0592  0 22.1184 

static unsigned char idata g_zi,ReceiveData[40];
bit ReceiveFinish;


sbit ACC0= ACC^0; 
sbit ACC1= ACC^1; 
sbit ACC2= ACC^2; 
sbit ACC3= ACC^3; 
sbit ACC4= ACC^4; 
sbit ACC5= ACC^5; 
sbit ACC6= ACC^6; 
sbit ACC7= ACC^7;



void IntTimer0() interrupt 1 
{ 
F_TM=1; 
} 
//發送一個字符 
void PSendChar(unsigned char inch) 
{ 

ACC=inch;

F_TM=0; 
BT_SND=0; //start bit 
TIMER0_ENABLE; //啟動 
while(!F_TM);
 
BT_SND=ACC0; //先送出低位 
F_TM=0; 
while(!F_TM);



BT_SND=ACC1; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC2; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC3; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC4; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC5; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC6; 
F_TM=0; 
while(!F_TM);



BT_SND=ACC7; 
F_TM=0; 
while(!F_TM);



BT_SND=1; 
F_TM=0; 
while(!F_TM);


TIMER0_DISABLE; //停止timer 

} 

//接收一個字符 
unsigned char PGetChar() 
{ 
TL0=TH0;
TIMER0_ENABLE; 

F_TM=0; 
while(!F_TM); //等過起始位
ACC0=BT_REC;

F_TM=0; 
while(!F_TM); 
ACC1=BT_REC;

F_TM=0; 
while(!F_TM); 
ACC2=BT_REC;

F_TM=0; 
while(!F_TM); 
ACC3=BT_REC;

F_TM=0; 
while(!F_TM); 
ACC4=BT_REC;



F_TM=0; 
while(!F_TM); 
ACC5=BT_REC;



F_TM=0; 
while(!F_TM); 
ACC6=BT_REC;



F_TM=0; 
while(!F_TM); 
ACC7=BT_REC;

F_TM=0;

while(!F_TM) 
{ 
if(BT_REC) 
{ 
break; 
} 
} 
TIMER0_DISABLE; //停止timer 
return ACC; 


} 
//檢查是不是有起始位 
bit StartBitOn() 
{ 
return (BT_REC==0);

} 
/*上面為模擬串口程序*/

/*下面為串口與主機的無線通訊程序*/
void SeriesPort (void) interrupt 4 using 0
{    ES=0;
    if(RI)
    {    
          ReceiveData[g_zi]=SBUF;
          //{En4850=1; TI=0;SBUF=ReceiveData[g_zi]; while(TI==0); 
TI=0;En4850=0; } 
          g_zi++; 
          if(g_zi==1) { if(ReceiveData[0]!=0xFE) g_zi=0;    }
          if(g_zi==2) { if(ReceiveData[1]!=0xF8) g_zi=0;}
          if(g_zi==3) { if(ReceiveData[2]>36) g_zi=0;}
          if(g_zi==(ReceiveData[2]+2)) { ReceiveFinish=1; 
g_zi=0; } 
           RI=0;                    
                                
    }
    else TI=0;  
    ES=1;
}
void InitSeriesPort(void)
 {
        ES = 0;//使串口0不能中斷
        PS = 0;//將串口0設為低優先級
        RCLK=0;TCLK=0;//串行口0使用定時器1做波特率發生器

        #if OSCU 
        {   TL1 = 0xFD; //11.0592MHz :9600
            TH1 = 0xFD;//TH1 = 0xdc;//TH1 = 0xFF;
        }
        #else
        {        
            TL1 = 0xFA;    //22.1184MHz  :9600
            TH1 = 0xFA;//TH1 = 0xFF;        
        }
        #endif
 }

void SendData(void) 
{
    unsigned char idata i;
    unsigned char  zd[2];
    ES = 0;
    En4850=1; //允許發送
    TI=0;
    for(i=0;i<2;i++)
    {
        zd[i]=0x50+i;
        SBUF=zd[i];
        while(TI==0);
        TI=0;
    }
  ES = 1;  En4850=0;//允許接收 
}





void main() 
{ 
unsigned char gch,i;

ReceiveFinish=0;
TMOD=0x22; /*定時器1為工作模式2(8位自動重裝),0為模式2(8位自動重裝) */ 
SCON=0x40;//串行口0工作于10位異步模式1
PCON=0;
InitSeriesPort();
ET1= 0;//關定時器1中斷
TR1=1;//啟動定時器1
SendData();
RI=0;REN=1;


PT0=1; 
TR0=0; //在發送或接收才開始使用 
TF0=0; 
TH0=(256-96); //9600bps 就是 1000000/9600=104.167微秒 執行的 timer是
104.167*11.0592/12= 96  

TL0=TH0; 
ET0=1; 
EA=1;

PSendChar(0x55);
PSendChar(0x66);
PSendChar(0x77);
PSendChar(0x88);
g_zi=0;ReceiveData[0]=1;ReceiveData[2]=0x55;
while(1) 
    {
if(ReceiveFinish)
{ReceiveFinish=0;
for(i=0;i<=(ReceiveData[2]+2);i++)
{En4850=1; TI=0;SBUF=ReceiveData[g_zi]; while(TI==0); TI=0;En4850=0; } 
}

if(StartBitOn()) 
           { 
           gch=PGetChar(); 
           PSendChar(gch);
           } 
      }
}


我測試可以啊! 我送 FE F8 01 會回送資料(必須先把else ti=0 才可以) [C.C.] 2006-7-22 20:23:13



主程序不是要改成 SBUF=ReceiveData[i]; [C.C.] 2006-7-22 20:26:01



對,主程序里把g_zi改為i后,再把中斷里發送的數據去掉后就好了,我發現中斷里發送數據會干擾接收到的數據,非常感謝你能給我這么多指點!謝謝! [kenn654321] 2006-7-22 20:37:30




?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品国产99久久久久久白柏| 亚洲欧美自拍偷拍| 精品入口麻豆88视频| 国产女人aaa级久久久级| 性做久久久久久免费观看| 国产大陆亚洲精品国产| 欧美久久一二三四区| 国产精品福利一区二区| 久久精品av麻豆的观看方式| 欧美在线小视频| 国产精品久久久久久久裸模| 久久99精品久久久| 欧美三区免费完整视频在线观看| 国产精品第五页| 国产成人午夜片在线观看高清观看| 这里只有精品99re| 亚洲精品老司机| av一二三不卡影片| 国产欧美一区二区三区网站| 国产综合色精品一区二区三区| 日韩三级视频中文字幕| 五月天久久比比资源色| 欧美色老头old∨ideo| 伊人色综合久久天天人手人婷| 懂色av中文一区二区三区| 精品国产乱码久久久久久浪潮| 日韩av电影一区| 欧美日韩一本到| 日韩中文字幕亚洲一区二区va在线 | 精品在线播放免费| 欧美一区二区网站| 五月综合激情日本mⅴ| 欧美日本免费一区二区三区| 亚洲成人自拍一区| 91精品国产综合久久久久久漫画| 日日骚欧美日韩| 91精品黄色片免费大全| 日本成人在线视频网站| 欧美精品一区二区高清在线观看| 久久99国产精品麻豆| 久久久天堂av| av高清久久久| 亚洲电影一区二区| 日韩一区二区在线免费观看| 久久99日本精品| 国产亚洲1区2区3区| 高清成人在线观看| 亚洲欧美日韩一区二区三区在线观看| 欧洲亚洲国产日韩| 天天色综合成人网| 国产亚洲精品精华液| 成人三级伦理片| 一卡二卡欧美日韩| 日韩欧美资源站| 国产成人精品免费网站| 亚洲免费在线电影| 91精品在线免费观看| 国产精品1区2区3区| 亚洲免费色视频| 91麻豆精品国产91久久久久| 国产福利一区在线| 亚洲国产日日夜夜| 精品久久99ma| 色婷婷精品大在线视频 | 日韩激情中文字幕| 精品成人在线观看| 一本久久a久久免费精品不卡| 天天色综合天天| 国产精品久久免费看| 欧美久久一区二区| 99国产精品一区| 麻豆国产精品一区二区三区| 亚洲男人天堂一区| 久久在线观看免费| 精品久久久三级丝袜| 成人午夜视频在线| 免费观看日韩电影| 亚洲日韩欧美一区二区在线| 日韩欧美亚洲国产精品字幕久久久| 青青青伊人色综合久久| 国产精品灌醉下药二区| 3atv在线一区二区三区| 波波电影院一区二区三区| 亚洲成人av一区二区三区| 国产精品美女久久久久久2018| 欧美精选一区二区| 91视频免费看| 国产成人精品一区二区三区网站观看 | 国产亚洲一本大道中文在线| 欧美精品一二三| 色婷婷狠狠综合| 99麻豆久久久国产精品免费 | 视频一区二区欧美| 亚洲欧美色综合| 国产免费久久精品| 久久久国产一区二区三区四区小说 | 国产精品视频九色porn| 精品少妇一区二区三区免费观看 | 欧美极品aⅴ影院| 欧美xfplay| 日韩精品一区二| 精品欧美久久久| 884aa四虎影成人精品一区| 欧美在线观看视频在线| 色一情一乱一乱一91av| 色婷婷综合久久久久中文一区二区| 高清视频一区二区| 成人午夜激情影院| 成人美女视频在线观看| 国产 日韩 欧美大片| 国产91精品一区二区麻豆亚洲| 欧美精品第1页| 日本精品视频一区二区| 99久久伊人精品| 91丝袜呻吟高潮美腿白嫩在线观看| 成人免费看视频| jiyouzz国产精品久久| caoporen国产精品视频| 91视频精品在这里| 欧美性受xxxx黑人xyx性爽| 欧美日韩大陆一区二区| 欧美久久高跟鞋激| 欧美xxxx在线观看| 欧美国产日韩在线观看| 亚洲色图欧美在线| 亚洲制服丝袜av| 日本最新不卡在线| 国产盗摄视频一区二区三区| 99re成人在线| 欧美久久久久久蜜桃| 精品国产成人系列| 国产精品传媒入口麻豆| 亚洲欧美日韩久久| 天堂一区二区在线| 国产伦精品一区二区三区免费迷| 成人午夜av电影| 欧美性大战久久久| 日韩精品一区二区三区在线观看| 国产午夜精品在线观看| 亚洲男人的天堂一区二区| 午夜精品免费在线| 高潮精品一区videoshd| 91年精品国产| 欧美不卡123| 亚洲九九爱视频| 久久99在线观看| 一本色道久久综合精品竹菊| 欧美第一区第二区| 自拍偷拍欧美精品| 免费在线一区观看| av午夜精品一区二区三区| 欧美一区二区三区的| 国产精品五月天| 免费在线观看一区| 91最新地址在线播放| 精品免费视频.| 亚洲综合色在线| 成人涩涩免费视频| 精品日本一线二线三线不卡| 亚洲人成精品久久久久久| 久久99久久精品| 91福利视频在线| 国产欧美一区二区三区网站| 日本欧美一区二区| 日本电影亚洲天堂一区| 成人美女视频在线观看18| 亚洲女人的天堂| 韩国av一区二区三区在线观看| 日本高清免费不卡视频| 欧美激情一区三区| 免费黄网站欧美| 欧美精品自拍偷拍动漫精品| 亚洲女与黑人做爰| 顶级嫩模精品视频在线看| 日韩一级大片在线观看| 亚洲综合无码一区二区| 97久久久精品综合88久久| 国产亚洲精品福利| 日韩va亚洲va欧美va久久| 欧美性做爰猛烈叫床潮| 亚洲精品国产视频| 不卡av在线免费观看| 国产亚洲1区2区3区| 精彩视频一区二区三区| 日韩欧美电影一二三| 天天影视涩香欲综合网| 欧美日韩国产系列| 亚洲午夜视频在线| 色综合色综合色综合| 亚洲同性gay激情无套| 成人app网站| 国产精品成人一区二区三区夜夜夜| 国产成人av电影在线| 国产喂奶挤奶一区二区三区| 极品少妇xxxx精品少妇| 一本一道久久a久久精品| 国产人成一区二区三区影院| 国产麻豆一精品一av一免费 | 波多野结衣在线一区| 国产偷国产偷亚洲高清人白洁 |