wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9739|回復(fù): 3
收起左側(cè)

51單片機(jī)模擬PS2協(xié)議制作5X5矩陣工業(yè)鍵盤

[復(fù)制鏈接]
ID:76127 發(fā)表于 2015-4-18 00:40 | 顯示全部樓層 |閱讀模式
根據(jù)客戶的要求利用單片機(jī)制作一個小的工控鍵盤,將下面對應(yīng)的鍵值發(fā)送到電腦顯示,利用的協(xié)議就是PS2,單片機(jī)型號為stc89c52rc,晶振為12M;

 
 
 
1
0
6
5
4
3
2
7
8
9
減號
等號
y
u
i
o

p
q
w
e
r
t


#include <reg51.h>
#include "PS2.H"
BYTE PS2RecChar=0xCC;
BOOL KeyBoardFlag=FALSE;
#define Key_line P0 //鍵盤行入口
#define Key_list P2 //鍵盤列入口

#define PS2_1      0  //16
#define PS2_0      1   //45
#define PS2_6      2 //36
#define PS2_5      3  //2e
#define PS2_4      4   //25
#define PS2_3      5    //26
#define PS2_2      6    //1e
#define PS2_7      7    //3d
#define PS2_8      8    //3e
#define PS2_9      9    //46
#define PS2_dec    10    //4e
#define PS2_eq     11    //55
#define PS2_y      12    //35
#define PS2_u      13  //3c
#define PS2_i      14   //43
#define PS2_o      15   //44
#define PS2_p      16  //4d
#define PS2_q      17    //15
#define PS2_w      18  //1d
#define PS2_e      19    //24
#define PS2_r      20    //2d
#define PS2_t      21    //2c

//第二套鍵盤碼

unsigned char PS2Value[22]={0x16,0x45,0x36,0x2e,0x25,0x26,0x1e,0x3d,0x3e,0x46,0x4e,0x55,0x35,0x3c,
        0x43,0x44,0x4d,0x15,0x1d,0x24,0x2d,0x2c};
        
unsigned char Key_Press(void)
{
unsigned temp3;
unsigned char flag=0;   //設(shè)定標(biāo)志位
Key_line=0xe0;        //將P0口低5位全部設(shè)置位0
temp3=Key_list;     //讀取P2口的狀態(tài),若果P2口的值temp3:(temp3&0xff)!=0xff成立,表示有鍵按下
if(((temp3&0xff)!=0xff))  //有鍵按下條件判斷
{
    flag=1;
    //Key_line=0XFF;     //清零鍵盤行端口
    Key_list=0xff;        //清零鍵盤列端口
}
else
    flag=0;          //無鍵按下標(biāo)志
return flag;
}
void delay(unsigned int ms)
{
unsigned int i,j;
for(i=ms;i>0;i--)
  for(j=100;j>0;j--);
}

unsigned char Key_Scan(void)
{
unsigned char temp2=0,temp3=0; //temp2用來保存行鍵盤數(shù)據(jù),temp3保存列鍵盤數(shù)據(jù)
unsigned char temp=0,flag=0;     //函數(shù)返回值temp
unsigned char i=0,key=0;   //i位循環(huán)控制變量,給行送數(shù)據(jù),key保存檢測鍵盤按下的標(biāo)志位
if((key=Key_Press())!=0)   //判斷是否有鍵按下
{
  delay(30);
  if((key=Key_Press())!=0)
  {
    for(i=0x01;i!=0x20;i=i<<1)  //循環(huán)控制變量,掃描5行
    {
     Key_line=(~i);        //將循環(huán)控制變量賦值行地址
     temp2 =(~i);     //保存行地址
     //temp2=Key_line;
     temp3=Key_list;      //讀取列地址數(shù)據(jù)
     switch((temp3&0xff)) //判斷是那列有鍵按下
     {
      case 0xfe:   //第一列有鍵按下
       switch((temp2&0xff)) //判斷第一列有鍵按下時,對應(yīng)的行按鍵   
       {
        case 0xfe:
          temp=23;   //第一行有鍵按下
          break;  //該鍵無鍵盤號定義
        case 0xfd:    //第二行有鍵按下
          temp=PS2_6;flag=1;  //對應(yīng)鍵值位PS2鍵盤的數(shù)字6,對應(yīng)的鍵盤掃描碼為0x36
          break;
        case 0xfb:    //第三行有鍵按下
          temp=PS2_7; flag=1;//對應(yīng)鍵值位PS2鍵盤的數(shù)字7,對應(yīng)的鍵盤掃描碼為0x3d
          break;
        case 0xf7:    //第四行有鍵按下
          temp=PS2_y; flag=1; //對應(yīng)鍵值位PS2鍵盤的字母y,對應(yīng)的鍵盤掃描碼為0x35
          break;
        case 0xef:    //第五行有鍵按下
          temp=PS2_q ;flag=1;  //對應(yīng)鍵值位PS2鍵盤的字母q,對應(yīng)的鍵盤掃描碼為0x15
          break;
       }
       break;
      
      case 0xfd:  
       switch((temp2&0xff))     // 第二列有鍵按下
       {
        case 0xfe:     //第一行有鍵按下
          temp=23;  //該鍵無鍵盤號定義
                 break;
        case 0xfd:     //第二行有鍵按下
          temp=PS2_5;flag=1;  //對應(yīng)鍵值位PS2鍵盤的數(shù)字5,對應(yīng)的鍵盤掃描碼為0x2e
          break;
        case 0xfb:      //第三行有鍵按下
          temp=PS2_8; flag=1;  //對應(yīng)鍵值位PS2鍵盤的數(shù)字8,對應(yīng)的鍵盤掃描碼為0x8e
          break;
        case 0xf7:      //第四行有鍵按下
          temp=PS2_u;flag=1;   //對應(yīng)鍵值位PS2鍵盤的字母u,對應(yīng)的鍵盤掃描碼為0x3c
          break;
        case 0xef:       //第五行有鍵按下
          temp=PS2_w ; flag=1;  //對應(yīng)鍵值位PS2鍵盤的字母w,對應(yīng)的鍵盤掃描碼為0x1d
          break;
       }
       break;
      
      case 0xfb:
       switch((temp2&0xff))    // 第三列有鍵按下
       {
        case 0xfe:     //第一行有鍵按下
          temp=23;  //該鍵無鍵盤號定義
                 break;
        case 0xfd:     //第二行有鍵按下
          temp=PS2_4; flag=1; //對應(yīng)鍵值位PS2鍵盤的數(shù)字4,對應(yīng)的鍵盤掃描碼為0x25
          break;
        case 0xfb:     //第三行有鍵按下
          temp=PS2_9; flag=1; //對應(yīng)鍵值位PS2鍵盤的數(shù)字9,對應(yīng)的鍵盤掃描碼為0x46
          break;
        case 0xf7:     //第四行有鍵按下
          temp=PS2_i; flag=1; //對應(yīng)鍵值位PS2鍵盤的字母i,對應(yīng)的鍵盤掃描碼為0x43
          break;
        case 0xef:      //第五行有鍵按下
          temp=PS2_e; flag=1;   //對應(yīng)鍵值位PS2鍵盤的字母e,對應(yīng)的鍵盤掃描碼為0x24
          break;
       }
       break;
  
      case 0xf7:
       switch((temp2&0xff))      // 第四列有鍵按下
       {
        case 0xfe:      //第一行有鍵按下
          temp=PS2_1; flag=1;  //對應(yīng)鍵值位PS2鍵盤的數(shù)字1,對應(yīng)的鍵盤掃描碼為0x16
                 break;
        case 0xfd:      //第二行有鍵按下
          temp=PS2_3; flag=1;  //對應(yīng)鍵值位PS2鍵盤的數(shù)字3,對應(yīng)的鍵盤掃描碼為0x26
          break;
        case 0xfb:      //第三行有鍵按下
          temp=PS2_dec;flag=1;  //對應(yīng)鍵值位PS2鍵盤的減號,對應(yīng)的鍵盤掃描碼為0x4e
          break;
        case 0xf7:       //第四行有鍵按下
          temp=PS2_o; flag=1;   //對應(yīng)鍵值位PS2鍵盤的字母o,對應(yīng)的鍵盤掃描碼為0x44
          break;
        case 0xef:      //第五行有鍵按下
          temp=PS2_r; flag=1;    //對應(yīng)鍵值位PS2鍵盤的字母r,對應(yīng)的鍵盤掃描碼為0x2d
          break;
       }        
       break;
  
      case 0xef:
       switch((temp2&0xff))      // 第五列有鍵按下
       {
        case 0xfe:         //第一行有鍵按下
          temp=PS2_0; flag=1;   //對應(yīng)鍵值位PS2鍵盤的數(shù)字0,對應(yīng)的鍵盤掃描碼為0x45
                 break;
        case 0xfd:         //第二行有鍵按下
          temp=PS2_2; flag=1;     //對應(yīng)鍵值位PS2鍵盤的數(shù)字2,對應(yīng)的鍵盤掃描碼為0x1e
          break;
        case 0xfb:       //第三行有鍵按下
          temp=PS2_eq;flag=1;     //對應(yīng)鍵值位PS2鍵盤的等號,對應(yīng)的鍵盤掃描碼為0x55
          break;
        case 0xf7:       //第四行有鍵按下
          temp=PS2_p;flag=1;     //對應(yīng)鍵值位PS2鍵盤的字母p,對應(yīng)的鍵盤掃描碼為0x4d
          break;
        case 0xef:        //第五行有鍵按下
          temp=PS2_t;flag=1;    //對應(yīng)鍵值位PS2鍵盤的字母t,對應(yīng)的鍵盤掃描碼為0x2c
          break;
       }
       break;  
     }
    //P0=0XFF;          //每當(dāng)檢測完一行時清零行端口和列端口
    //P2=0xff;
    if((key=Key_Press())!=0);
    delay(30);
    }
  }   
}
else  temp=23;     //無鍵按下返回數(shù)字23,對應(yīng)數(shù)組內(nèi)的0;
if(flag==1)
  return temp;  //返回按鍵掃描值
else
     return 23;
}  
void OnKeyBoardOnline(BOOL i)
{
KeyBoardFlag=i;
}
//---------------------------------------------------------------------------
void OnPS2ReceiveChar(BYTE ReceChar,BOOL P)
{
BOOL ParityBit=0;
ACC=ReceChar;
CY=P;
ParityBit=(BOOL)(CY?0x00:0x80);//奇校驗(yàn)位
if(P==ParityBit);
PS2RecChar=ReceChar;
}
//---------------------------------------------------------------------------
void OnPS2SendChar(BYTE dat)
{
BOOL ParityBit;
BYTE i;
ACC=dat;
CY=P;
ParityBit=(BOOL)(CY?0x00:0x80);//奇校驗(yàn)位

CLSSIGNAL();
CT_KB=OFF;
EX0=0;
H_DATA=0;Delay10us();//start bit
H_CLK=1;
Delay10us();
H_CLK=0;
Delay30us();

for(i=0;i<8;i++)
{
  if(dat&0x01==0x01){H_DATA=1;Delay10us();}
  else {H_DATA=0;Delay10us();}
  dat>>=1;
  H_CLK=1;
  Delay10us();
  H_CLK=0;
  Delay30us();
}
H_DATA=ParityBit;Delay10us();//parity bit
H_CLK=1;
Delay10us();
H_CLK=0;
Delay30us();
H_DATA=1;Delay10us();//stop bit
H_CLK=1;
Delay10us();
H_CLK=0;
Delay30us();

IE0=0;
EX0=1;
H_CLK=1;
H_DATA=1;
CT_KB=ON;
Delay30us();
}
//---------------------------------------------------------------------------
void ExternInterrupt0(void) interrupt 0
{
BOOL ParityBit=0,CLKFlag=1;
BYTE i=0,j=8,dat=0x00;
EX0=0;
while(CLKFlag)
{
  i++;
  if(H_CLK==1)CLKFlag=0;
  if(i>0xEE)
  {
   IE0=0;
   EX0=1;
   return ;
  }
}
while(j--)//延時等待大鍵盤的動作
{
  for(i=0;i<0x88;i++)//檢查是否有數(shù)據(jù)處理 0x88
  {
   if(H_CLK==0)//有動作則是大鍵盤存在
   {
    OnKeyBoardOnline(TRUE);//大鍵盤存在,開機(jī)由大鍵盤應(yīng)答
    IE0=0;
    EX0=1;
    return ;//存在的話置標(biāo)志位,并返回
   }
  }
}
OnKeyBoardOnline(FALSE);//大鍵盤不存在,由小鍵盤應(yīng)答

//轉(zhuǎn)到接收
for(i=0;i<8;i++)//read 8bit
{
  Delay30us();
  H_CLK=0;           
  Delay30us();
  H_CLK=1;
  dat=dat>>1;   
  if(H_DATA)dat|=0x80;
  
  if(H_CLK==0){ return; }//如果時鐘被拉低,則有錯誤發(fā)生
}
         
Delay30us();
H_CLK=0;           
Delay30us();
H_CLK=1;
if(H_DATA)ParityBit=1;
else ParityBit=0;
Delay30us();
H_CLK=0;           
Delay30us();
H_CLK=1;//STOP BIT H_DATA 0 ERR

Delay10us();
H_DATA=0; //ACK bit
Delay10us();
H_CLK=0;
Delay30us();Delay30us();
H_CLK=1;
Delay30us();
H_DATA=1;

OnPS2ReceiveChar(dat,ParityBit);
IE0=0;
EX0=1;
return ;
}
//---------------------------------------------------------------------------
void ProcessPS2(void)
{
if(KeyBoardFlag==FALSE)//大鍵盤不存在
{
  if(PS2RecChar==0xF3)//1
  {
   OnPS2SendChar(0xFA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0x00)//11
  {
   OnPS2SendChar(0xFA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0x02)//111
  {
   OnPS2SendChar(0xFA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0x20)//1111
  {
   OnPS2SendChar(0xFA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xED)//2
  {
   OnPS2SendChar(0xFA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xF0)//3
  {
   OnPS2SendChar(0xFA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xF2)//4
  {
   OnPS2SendChar(0xFA);
   Delay30us();
   OnPS2SendChar(0xAB);
   Delay30us();
   OnPS2SendChar(0x83);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xEF)//5
  {
   OnPS2SendChar(0xFA);
   Delay30us();
   OnPS2SendChar(0xBF);
   Delay30us();
   OnPS2SendChar(0xB0);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xF3)//6
  {
   OnPS2SendChar(0xFA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xFE)//7 //resend
  {
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xEE)//8
  {
   OnPS2SendChar(0xEE);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xEE)//9
  {
   OnPS2SendChar(0xEE);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xF1)//10
  {
   OnPS2SendChar(0xFA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xF4)//11
  {
   OnPS2SendChar(0xFA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xAA)//12
  {
   OnPS2SendChar(0xAA);
   PS2RecChar=0xCC;
  }
  else if(PS2RecChar==0xFF)//13
  {
   OnPS2SendChar(0xFA);
   Delay30us();
   OnPS2SendChar(0xAA);
   Delay30us();
   PS2RecChar=0xCC;
  }
  else ;
}
}
//---------------------------------------------------------------------------
void PS2Init(void)
{
IT0=0; //低電平觸發(fā)中斷
PX0=1;
EX0=1;
}
//---------------------------------------------------------------------------
extern void ProcessPS2(void);
extern void PS2Init(void);
void main(void)
{
unsigned char tem;
PS2Init();
ProcessPS2();
while(1)
{
  tem=Key_Scan();
  switch(tem&0xff)
  {
   case 23 :
    break;
   default:
   {
    OnPS2SendChar(PS2Value[tem]);
   }
    break;   
  }
  //開機(jī)應(yīng)答,使電腦能識別到鍵盤
  //other code
}
}
仿真矩陣鍵盤電路圖,該電路未連接PS2,但可通過LED燈觀察每個按鍵按下之后的鍵值返回知否和第二套鍵盤碼對應(yīng)一致



第二套鍵值碼對應(yīng)表:





相關(guān)帖子

回復(fù)

使用道具 舉報

ID:135507 發(fā)表于 2016-7-30 09:02 | 顯示全部樓層
這個 PS2.h的頭文件去哪里找呀
回復(fù)

使用道具 舉報

ID:135566 發(fā)表于 2016-7-30 23:54 | 顯示全部樓層
不錯,挺好
回復(fù)

使用道具 舉報

ID:258695 發(fā)表于 2018-3-13 16:43 | 顯示全部樓層
"這個 PS2.h的頭文件去哪里找呀"
同問。。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
蜜臂av日日欢夜夜爽一区| 久久久久久视频| 久久婷婷国产麻豆91| 天天摸天天干天天操| 美女网站在线| 91成人在线网站| 日本特黄久久久高潮| 精品欧美一区二区三区| 九九热这里只有精品免费看| 亚洲国产午夜伦理片大全在线观看网站 | 日韩女同一区二区三区| 韩国中文字幕hd久久精品| 色资源网在线观看| 人人爱人人干婷婷丁香亚洲| 激情综合网天天干| 91麻豆精品国产91久久久更新时间| 欧美日本精品在线| 日韩最新中文字幕| 一级特黄曰皮片视频| 天天干视频在线观看| 你懂的视频在线免费| 欧美黑白配在线| 91亚洲精品一区二区乱码| 欧美群妇大交群的观看方式| 国产97免费视| 三上悠亚在线一区| 午夜精品免费观看| 8×8x拔擦拔擦在线视频网站| 日韩在线你懂得| 精品一区二区三区蜜桃| 欧美亚洲高清一区二区三区不卡| 欧美孕妇性xx| 亚洲天堂av线| 久久这里只有精品9| 一级黄色av| 日韩视频1区| 26uuu成人网一区二区三区| 欧美精品一区二区蜜臀亚洲| 99国产在线视频| 亚洲乱妇老熟女爽到高潮的片| 丰满熟妇乱又伦| 日本在线视频观看| 一区二区日韩欧美| 亚洲一区二区精品视频| 欧美大片在线影院| 中文字幕的av| 少妇无套高潮一二三区| 色欲久久久天天天综合网| 午夜国产在线| 国产欧美日韩在线观看视频| 精品在线一区二区| 91精品欧美久久久久久动漫| 国产精品视频免费观看www| 国产3p在线播放| 国产天堂av在线| 美女视频网站在线观看| 精品网站在线| 精久久久久久久久久久| 91精品欧美一区二区三区综合在| 成人蜜桃视频| 影音先锋人妻啪啪av资源网站| 天堂在线观看免费视频| 影音先锋男人看片资源| 男人猛进猛出女人屁股视频| 久草资源在线| 久久这里只有| 欧美中文字幕久久| 国产伦精品一区二区三区视频黑人| 久久久午夜精品福利内容| 国产在线第二页| av成人在线观看| 成人福利视频网站| 中文字幕在线国产精品| 久久国产午夜精品理论片最新版本| 国产99免费视频| 久草免费在线播放| 国产精品久久久久久麻豆一区软件| 最新日韩欧美| 国产成人精品三级麻豆| 亚洲久久久久久久久久久| 国产日韩欧美大片| 中文字幕第31页| 麻豆视频在线| 美腿丝袜亚洲色图| 中文字幕在线亚洲| 黄色手机在线视频| 国产乱在线观看视频| 中文字幕av一区二区三区四区| 综合自拍亚洲综合图不卡区| 成人av.网址在线网站| www亚洲色图| 羞羞网www| aa亚洲婷婷| 亚洲欧美日韩天堂一区二区| 精品视频一区二区在线| 亚洲日韩第九十九页| 日本超碰一区二区| 精品久久久久久久久久久| 久久久久久久有限公司| 激情视频网站在线观看| 欧美hdxxx| 久久夜色精品一区| 国产成人精品国内自产拍免费看| 我想看黄色大片| 五月天最新网址| 亚洲精品三级| 一区二区福利视频| 免费高清视频在线观看| 比比资源先锋| 韩国视频一区| 美女视频免费精品| 后进极品白嫩翘臀在线播放| 深爱激情五月婷婷| 99热自拍偷拍| 蜜臀精品一区二区三区| а√中文在线8| 成人黄色综合网站| 欧美在线观看日本一区| 波多野结衣av在线观看| 日本免费高清视频| 亚洲国内自拍| 中文字幕亚洲无线码a| av免费在线免费观看| 美女视频黄久久| 久久这里只有精品99| 人妻精油按摩bd高清中文字幕| 黄色网页在线| 午夜精品婷婷| 亚洲欧洲在线视频| 自拍偷拍激情视频| 日本不卡1区2区3区| 久久av在线| 久久97久久97精品免视看| 国产99午夜精品一区二区三区 | 久久久久久久久久久久久久久久久久av| 污污内射在线观看一区二区少妇 | 国产精品吹潮在线观看| 国产亚洲欧美精品久久久www | 欧美日韩一区二区三区四区不卡| 欧美性猛交xxxxxx富婆| av网站手机在线观看| 欧美性猛交xxxxbbbb| 国产伦精品一区二区三区千人斩| 欧美不卡视频一区| 日本成人在线免费观看| 久草热久草在线频| 国产福利一区二区三区视频| 成人国产亚洲精品a区天堂华泰 | 久久久久久久久久久9不雅视频| 亚洲午夜未删减在线观看 | 91在线色戒在线| 免费黄色一级大片| 精品一区二区三区视频在线播放| 欧美午夜寂寞影院| 无需播放器的av| 国产1区2区视频| 韩国一区二区三区| 亚洲综合大片69999| av网站在线观看免费| 欧美一级一片| 亚洲天堂一区二区三区| 免费看污片的网站| 黄色精品在线观看| 国产精品毛片久久久久久| 亚洲国产精品久久久久婷婷老年 | 丁香网亚洲国际| 成人3d动漫一区二区三区91| a级片免费观看| 国产成人精品免费视| 国产一区二区三区视频免费| 97在线观看免费视频| 污的网站在线观看| 亚洲一级二级三级在线免费观看| 国产高清av在线播放| xfplay每日更新av资源在线| 男人的j进女人的j一区| 成人在线视频网| 空姐吹箫视频大全| 欧美mv日韩| 久久电影一区二区| 欧美成人aaaaⅴ片在线看| 日韩黄色在线| 精品成人一区二区三区四区| 黄瓜视频污在线观看| 四季久久免费一区二区三区四区| 精品国产91久久久| 九九热99视频| aaa在线观看| 亚洲v日本v欧美v久久精品| 日韩精品无码一区二区三区免费| 天天噜天天色| 国产精品日产欧美久久久久| 成人免费a级片| 黄色免费看网站| 欧美激情一区二区三区在线| 欧美亚洲成人网| 国产剧情精品在线| 日韩欧美视频| 538国产精品一区二区免费视频 | 国产97色在线 | 日韩| 中文字幕中文字幕在线中文字幕三区 | 97超碰国产精品女人人人爽 | 欧美一激情一区二区三区| 先锋资源av在线| а√在线中文在线新版| 欧美日韩国产乱码电影| 天堂www中文在线资源| 欧美性爽视频| 欧美日韩免费在线视频| 国产麻豆剧传媒精品国产av| 国内高清免费在线视频| 91.com在线观看| 亚洲毛片亚洲毛片亚洲毛片| 日韩城人网站| 色婷婷av一区二区三区久久| 国产69精品久久久久久久久久| 噜噜噜狠狠夜夜躁精品仙踪林| www.欧美三级电影.com| www.18av.com| 免费在线观看麻豆视频 | 成人黄色免费短视频| 欧美成人高清电影在线| 午夜国产小视频| 日韩欧美中文字幕在线视频| 最近2019中文字幕第三页视频| 日韩色图在线观看| 日韩激情免费| 成人免费淫片aa视频免费| 中文乱码字幕午夜无线观看| 日本欧美韩国一区三区| 日韩av一区二区三区在线观看| 99在线免费观看| 亚洲一区二区三区不卡国产欧美| 美女露出粉嫩尿囗让男人桶| 亚洲最新无码中文字幕久久| 亚洲男人天堂久| www.亚洲激情| 欧美私人啪啪vps| 韩国成人一区| 91.·福利| 亚洲综合激情网| 亚洲一区二区在线免费| 日韩色性视频| 欧美国产日韩精品| 亚洲av片在线观看| 国产伦精品一区二区三区免费迷| 国产精品啪啪啪视频| 亚洲精品无码专区在线播放| 色综合久久久久久久久久久| 成人无码av片在线观看| 久久久久影视| 国产精品久久久久久久美男| 国产麻豆麻豆| 国产欧美日韩另类视频免费观看| 五月天激情播播| 三级成人黄色影院| 久久精视频免费在线久久完整在线看| 精品久久久久久亚洲综合网站| 日韩av电影天堂| 国产在线xxxx| 肉肉视频在线观看| 亚洲乱码一区av黑人高潮| 怡红院男人的天堂| 水蜜桃久久夜色精品一区的特点| 亚洲午夜在线观看| 日韩大片b站免费观看直播| 欧美日韩三级一区| 久久免费少妇高潮99精品| 久久久久电影| 日韩一区二区三区高清| 人人九九精品| 精品99一区二区三区| 欧美精选午夜久久久乱码6080| 91精品国产高清91久久久久久| 久久久免费人体| 97在线看福利| 91九色老女人| 亚洲免费av高清| 九九热免费在线| 日韩一区电影| 欧美裸体网站| 国产h视频在线观看| 亚洲精品二三区| www.久久色| 99热国内精品永久免费观看| 国产一区视频观看| 日韩精品视频无播放器在线看 | 亚洲女同另类| 亚洲成人a**址| 久草免费在线观看| 色偷偷偷综合中文字幕;dd| 亚洲成色在线综合网站2018站| youjizz久久| 亚洲一区和二区| 免费欧美激情| 鲁丝片一区二区三区| 国产无套粉嫩白浆在线2022年| 精品美女被调教视频大全网站| 探花国产精品一区二区| 精品在线免费观看| 91国产精品视频在线观看| 青青草国产一区二区三区| 国产精品高潮呻吟久久av无限| wwwwww99| 欧美日韩情趣电影| 91片黄在线观看喷潮| 高清成人免费视频| 国产一卡二卡三卡四卡| 精品国内自产拍在线观看视频| 欧美一区二区在线视频观看| 九色porny在线| 欧美激情一二区| 天天操夜夜欢| 日韩欧美123| 五十路在线视频| 久久人体视频| 日本不卡一区二区三区视频| 瑟瑟视频在线| 色综合天天综合网国产成人网 | 久久综合中文字幕| 一区二区不卡免费视频| 天天综合国产| 国产69精品久久久久久久| 欧美综合社区国产| 国产成人精品福利一区二区三区| 成人性爱视频在线观看| 久久久精品在线| www.夜夜操| 欧美一区二区三区人| 东京干手机福利视频| 国产精品私人影院| xxxx 国产| 国产成人精品网址| 久久国产柳州莫菁门| 99亚洲精品| 午夜剧场在线免费观看| 精品国产精品久久一区免费式| 一区二区三区偷拍| 电影亚洲精品噜噜在线观看| 91网站免费看| 综合久久2o19| 国产精品久久久久免费a∨大胸| 日本中文字幕一区二区有码在线| 俺去亚洲欧洲欧美日韩| 99视频免费| 精品亚洲夜色av98在线观看| 尤物视频在线| 日韩精品一区二区三区在线播放| 天堂√最新版中文在线| 欧美日韩在线第一页| 精品国产av一区二区三区| 亚洲婷婷综合久久一本伊一区| 成人午夜视频精品一区| 成人免费av网站| 最新一区二区三区| 国产一区欧美二区| 国产精久久一区二区三区| 日本亚洲欧美天堂免费| 中文字幕在线视频播放| 99国产精品视频免费观看一公开| 一级片黄色免费| 亚洲网址在线| 可以看的av网址| 日韩图片一区| 成人在线电影网站| 日日夜夜免费精品| 国产精品无码久久久久一区二区| 肉色丝袜一区二区| 欧洲av一区二区三区| 裸体在线国模精品偷拍| 国产精品久久免费观看| 国精产品一区一区三区mba桃花 | 五月婷婷丁香六月| 日本精品免费观看高清观看| 亚洲av毛片成人精品| 欧美亚洲禁片免费| 欧美精品se| 精品对白一区国产伦| www日本黄色| 久久精品免费播放| 污污的网站在线观看| 欧美影院在线播放| 欧美成人xxx| 91精品综合久久| 经典三级一区二区| 日韩av图片| 极品尤物一区| 久久精品一区二| 韩国久久久久| 中文字幕在线观看的网站| 国产一区高清在线| 日韩精品视频免费看| 国产精品黄色在线观看| 91亚洲国产成人精品一区| 欧美视频在线看| 在线观看精品自拍视频| 日韩午夜激情视频| 制服影音先锋| 性欧美xxxx| 黄色在线看片|