久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: [原創(chuàng)]【共享】【程序】用單片機(jī)開發(fā)板做一個能控制自己電腦的紅外遙控器(附詳細(xì)代碼) [打印本頁]

作者: 學(xué)無止境    時(shí)間: 2011-9-30 17:31
標(biāo)題: [原創(chuàng)]【共享】【程序】用單片機(jī)開發(fā)板做一個能控制自己電腦的紅外遙控器(附詳細(xì)代碼)
生活在大學(xué)的同學(xué)們在經(jīng)過一天的學(xué)習(xí)和忙碌之后,到晚上是否想看一場電影。有時(shí)累了一天了,都不愿自己動手去操作播放電影了,這時(shí)是否想過用一個遙控器來代替鍵盤去操作電腦呢?下面的這個例子,將帶著大家去實(shí)現(xiàn)具備這樣功能的電腦遙控器。
       首先你需要一個遙控器,需要知道他的按鍵碼,按鍵碼可以用程序測試出來。將這個按鍵碼和你要設(shè)置的鍵盤的案件的掃描碼建立一個對應(yīng)的關(guān)系。接下來你需要一個單片機(jī)開發(fā)板,也可以自己做。自己做需要話PCB,選擇好芯片并設(shè)計(jì)電路。最后需要做的就是了解PS/2通信協(xié)會并根據(jù)這個協(xié)議來編寫程序。如果是要設(shè)置像ALT+F4這種的快捷鍵的朋友,這種鍵我們可以想象按下的順序,首先按下ALT鍵,是發(fā)送他的通碼,這時(shí)并沒有釋放,再按下F4的通碼,接著松開F4,這時(shí)發(fā)送的是F4的斷碼,接著松開ALT,發(fā)送的是ALT的斷碼,這個數(shù)據(jù)是這樣的。下面給出程序,此例直接在電子人單片機(jī)開發(fā)板 上實(shí)現(xiàn)。
     /***********************這是main.c文件中的代碼。**********************************************************************************
** 文   件   名:  無線通信主文件
********************************************************************************************************/
#include "config.h"
#define MAXSIZE 33
UCHAR receive_data;
UCHAR sp;  //奇偶校驗(yàn)
UCHAR start;
bit changbit=0;    //改變位
UCHAR code InfraredData[MAXSIZE] = {
        //0-14----------------------------------------------------------------------------------------
        0x00/*0     */, 0x01/*1        */, 0x02/*2     */, 0x03/*3     */, 0x04/*4      */,
        0x05/*5     */, 0x06/*6        */, 0x07/*7     */, 0x08/*8     */, 0x09/*9   */,
        0x0A/*F5       */,       0x1C/*TAB   */, 0x4F/*空格  */, 0x56/*回車   */,
        0x5C/*BackSpace*/,
        //15-26----------------------------------------------------------------------------------------
        0x10/*靜音     */, 0x12/*WINDOWS*/,0x1A/*音加  */, 0x1B/*上一曲 */,
        0x1E/*音減     */, 0x1F/*下一曲   */, 0x4E/*delete */,0x53/*鼠標(biāo)右*/, 0x5A/*上     */,
        0x5B/*右       */, 0x5E/*下       */, 0x5F/*左     */,
        //27-32----------------------------------------------------------------------------------------
        0x16/*ctrl+v   */,  0x51/*alt+esc   */,  0x54/*ctrl+c */,0x57/*ALT+F4*/,
        0x0F/*win+E    */,  0x0B/*wins+D   */,
       };
/*  0x17 切換  */
/*********************************************************************************************************************/
/*              鍵盤掃描碼                     */
/*********************************************************************************************************************/
uchar code Table1[15][3]= { 0x70,0xf0,0x70,/*0    */0x69,0xf0,0x69,/*1        */0x72,0xf0,0x72,/*2        */
       0x7a,0xf0,0x7a,/*3        */0x6b,0xf0,0x6b,/*4        */0x73,0xf0,0x73,/*5    */
       0x74,0xf0,0x74,/*6    */0x6c,0xf0,0x6c,/*7    */0x75,0xf0,0x75,/*8    */
       0x7d,0xf0,0x7d,/*9    */0x03,0xf0,0x03,/*F5       *//*0x76,0xf0,0x76,CAPSLK 58*/
       0x0d,0xf0,0x0d,/*TAB   */0x29,0xf0,0x29,/*空格   */0x5a,0xf0,0x5a,/*回車   */
       0x66,0xf0,0x66,/*BackS   */
        };
uchar code Table2[12][5]= {
       0xe0,0x23,0xe0,0xf0,0x23,/*【靜音】  */
       0xe0,0x27,0xe0,0xf0,0x27,/*【wins】 */
       0xe0,0x32,0xe0,0xf0,0x32,/*【音加】  */
       0xe0,0x15,0xe0,0xf0,0x15,/*【上一曲】 */
       0xe0,0x21,0xe0,0xf0,0x21,/*【音減】  */
       0xe0,0x4d,0xe0,0xf0,0x4d,/*【下一曲】 */
       0xe0,0x71,0xe0,0xf0,0x07,/*【delete】 */
       0xe0,0x2f,0xe0,0xf0,0x2f,/*【鼠標(biāo)右鍵】 */
       0xe0,0x75,0xe0,0xf0,0x75,/*【上】  */
       0xe0,0x74,0xe0,0xf0,0x74,/*【右】  */
       0xe0,0x72,0xe0,0xf0,0x72,/*【下】  */
       0xe0,0x6b,0xe0,0xf0,0x6b,/*【左】  */
         };
            
uchar code Table3[4][6]=  { 0x14,0x2a,0xf0,0x2a,0xf0,0x14,/*ctrl +v   */
       0x11,0x76,0xf0,0x76,0xf0,0x11,/*alt  +ESC */
       0x14,0x21,0xf0,0x21,0xf0,0x14,/*ctrl +c   */
       0x11,0x0c,0xf0,0x0c,0xf0,0x11,/*ALT+F4    */
            };
uchar code Table4[2][8]={ 0xe0,0x27,0x24,0xf0,0x24,0xe0,0xf0,0x27/*【windows】+E */,
       0xe0,0x27,0x23,0xf0,0x23,0xe0,0xf0,0x27/*【windows】+D */};
UCHAR code Table5[10][3]={
       0x34,0xf0,0x34,/*G*/0x33,0xf0,0x33,/*H*/0x24,0xf0,0x24,/*E*/0x4b,0xf0,0x4b,/*L*/
       0x44,0xf0,0x44,/*O*/0x3b,0xf0,0x3b,/*J*/0x43,0xf0,0x43,/*I*/0x3c,0xf0,0x3c,/*U*/
       0x1c,0xf0,0x1c,/*A*/0x31,0xf0,0x31,/*N*/
      };
UCHAR Select(UCHAR Infrared);
void SendPS2(UCHAR Infrared);
void send_byte(uchar dat); //PS/2 協(xié)議  由鍵盤發(fā)送給主機(jī)
void init_keyboard();   //PS/2開機(jī)初始化
          
UCHAR Select(UCHAR Infrared)  //查找按鍵序號,從MAXSIZE里比較
{
UCHAR i;
for(i=0;i<MAXSIZE;i++)
{
  if(Infrared == InfraredData)
   break;  
}
return i;
}
void SendPS2(UCHAR Infrared)//輸入紅外按鍵碼值
{
UCHAR num;
num = Select(Infrared);  //查找對應(yīng)的PS/2 掃描碼值
if(num<15)
{
  if(changbit&&(num<10))
  {
   send_byte(Table5[num][0]);  //發(fā)送字母
   send_byte(Table5[num][1]);
   send_byte(Table5[num][2]);  
  }
  else
  {
   send_byte(Table1[num][0]);   //發(fā)送數(shù)字
   send_byte(Table1[num][1]);
   send_byte(Table1[num][2]);
  }
}
else if(num<27)
{
  send_byte(Table2[num-15][0]);
  send_byte(Table2[num-15][1]);  //發(fā)送媒體鍵
  send_byte(Table2[num-15][2]);
  send_byte(Table2[num-15][3]);
  send_byte(Table2[num-15][4]);
}
else if(num<31)
{
  send_byte(Table3[num-27][0]);
  send_byte(Table3[num-27][1]);     //發(fā)送普通的快捷鍵
  send_byte(Table3[num-27][2]);
  send_byte(Table3[num-27][3]);
  send_byte(Table3[num-27][4]);
  send_byte(Table3[num-27][5]);
}
else
{
  send_byte(Table4[num-31][0]);
  send_byte(Table4[num-31][1]);    //帶wins的快捷鍵
  send_byte(Table4[num-31][2]);
  send_byte(Table4[num-31][3]);
  send_byte(Table4[num-31][4]);
  send_byte(Table4[num-31][5]);
  send_byte(Table4[num-31][6]);
  send_byte(Table4[num-31][7]);
}
send_byte(0xAA);    //鍵盤控制器自檢
}
/*********************************************************************************************************************/
/*********************************************************************************************************
** 函數(shù)名稱: void Delay(unsigned int s)
** 功能描述: 延時(shí)程序
********************************************************************************************************/
                  
void delay(uint z) //延時(shí) 毫秒級
{
uint x,y;
for(x=z;x>0;x--)
for(y=124;y>0;y--);
}
void micsec_delay(uchar z)//延時(shí) 10微秒級
{
  uchar i,j;
for(i=z;i>0;i--)
for(j=3;j>0;j--);
}
void send_byte(uchar dat) //PS/2 協(xié)議  由鍵盤發(fā)送給主機(jī) ,接收的數(shù)據(jù)
{
   uchar i;
   EX0 = 0;         //從設(shè)備總是在時(shí)鐘線為高時(shí)改變數(shù)據(jù)線狀態(tài),主設(shè)備在時(shí)鐘下降沿讀入數(shù)據(jù)線狀態(tài)
      while(!clk);        //從設(shè)備向主設(shè)備發(fā)送數(shù)據(jù)時(shí),首先檢查時(shí)鐘線,以確認(rèn)時(shí)鐘線是否為高電平
   micsec_delay(5);       //如果是高電平,從設(shè)備就可以開始傳輸數(shù)據(jù)
      while(!clk);
   if(da==1)      // DA==1 表示從設(shè)備到主設(shè)備的通信有11位數(shù)據(jù),為0表示主設(shè)備到從設(shè)備的通信有12位數(shù)據(jù)
   {
      da=0;clk=0;        
   micsec_delay(4);
   for(i=0;i<8;i++)     //數(shù)據(jù)位:8位
   {
    LED=~LED;
    clk=1;
    micsec_delay(2);
    da=dat&0x01;
    if(da==1)
    sp++;        
    dat>>=1;       //獲取數(shù)據(jù)
    micsec_delay(1);
    clk=0;
    micsec_delay(4);
   }
   clk=1;
   micsec_delay(2);
   switch(sp%2)       //奇校驗(yàn)位
   {
    case 0 : {da=1;sp=0;}      // 如果數(shù)據(jù)位中1的個數(shù)為偶數(shù),校驗(yàn)位就為1;如果數(shù)據(jù)位中1的個數(shù)為奇數(shù),
    break;
    case 1 : {da=0;sp=0;}   //校驗(yàn)位就為0;總之,數(shù)據(jù)位中1的個數(shù)加上校驗(yàn)位中1的個數(shù)總為奇數(shù),因此總進(jìn)行奇校驗(yàn)。
    break;
   }
   micsec_delay(1);
   clk=0;
   micsec_delay(4);
   clk=1;
   micsec_delay(2);
   da=1;      
   micsec_delay(1);
   clk=0;
   micsec_delay(4);
   clk=1;
   EX0 = 1;
   }
}
void init_keyboard()   //PS/2開機(jī)初始化
{  
  delay(5);
  switch(receive_data)
  {
   case 0xFF :{send_byte(0xFA);send_byte(0xAA);}   //引起鍵盤進(jìn)入Reset模式
   break;
   case 0xF2 :{send_byte(0xFA);send_byte(0xAB);send_byte(0x83);}     //鍵盤回應(yīng)2個字節(jié)設(shè)備的ID
   break;
   case 0xFE : send_byte(0xFE);    //用于只是在接收中出現(xiàn)的錯誤,從發(fā)送最后的掃描碼或者命令回應(yīng)給主機(jī)
   break;
   case 0xCC : send_byte(0xFE);      
   break;
   case 0x60 : send_byte(0xFE);     //讀輸入緩沖區(qū)的內(nèi)容就是讀0x60端口的數(shù)據(jù)
   break;
   case 0xEE : send_byte(0xEE);     //鍵盤用"Echo"(0xEE)回應(yīng)
   break;
   case 0xF1 : send_byte(0xFE);  
   break;
   default   : send_byte(0xFA);        //缺省設(shè)置,所有鍵的通碼、斷碼都使能
   break;
  }  
}
void PS2_receive() interrupt 0    //PS/2中斷接收主機(jī)數(shù)據(jù)
{
uchar i;          //主設(shè)備首先將時(shí)鐘線和數(shù)據(jù)線設(shè)置為"請求發(fā)送"狀態(tài)
    EX0 = 0;        //具體方式為:首先下拉時(shí)鐘線至少100us抑制通信,然后下拉數(shù)據(jù)線"請求發(fā)送",最后釋
if(clk==0)        //放時(shí)鐘線.在此過程中,從設(shè)備在不超過10us的間隔內(nèi)必須檢查這個狀態(tài),當(dāng)設(shè)備檢測到
{           //這個狀態(tài)時(shí),設(shè)備將開始產(chǎn)生時(shí)鐘信號.此時(shí)數(shù)據(jù)傳輸?shù)拿恳粠?2位構(gòu)成
  micsec_delay(11);
     if(clk==0)
     {
   while(!clk);
   if(da==0)
   {
    micsec_delay(1);
    for(i=0;i<8;i++)  //接收八位的數(shù)據(jù)
    {
     LED=~LED;
     clk=0;     //主設(shè)備總是在時(shí)鐘線為低電平時(shí)改變數(shù)據(jù)線的狀態(tài),從設(shè)備在時(shí)鐘上升沿讀人數(shù)據(jù)線狀態(tài)
     receive_data>>=1;
     micsec_delay(3);
     clk=1;
     micsec_delay(2);
     if(da==1)
     receive_data|=0x80;
     micsec_delay(1);
     }
     clk=0;
     micsec_delay(3);
     clk=1;
     micsec_delay(3);
     clk=0;
     micsec_delay(3);
     clk=1;
     micsec_delay(2);
     while(!da);
     da=0;
     micsec_delay(1);
     clk=0;
     micsec_delay(3);
     clk=1;
     micsec_delay(1);
     da=1;
     init_keyboard();
   }
    }
}
    EX0 = 1;
}
uchar chang(uchar cent)   //把一個0-9,10-15轉(zhuǎn)ASCII碼‘0’-‘9’,‘A’-'F'
{
if( cent <= 9 )
  cent = cent + 0x30;   //顯示數(shù)字0-9
else
  cent = cent + 0x37;   //顯示字符A-F
return( cent );
}
/*----------------------------------------*/
void xianshi(uchar time11,uchar time22,uchar j,uchar k)
{      //解碼顯示兩個16進(jìn)制數(shù)據(jù)
  uchar a,b,c,d;
  a=time11/16;
  b=time11%16;
  c=time22/16;
  d=time22%16;
  LCD1602_write_char(j,k,chang(a));
  LCD1602_write_char(j,k+1,chang(b));
  LCD1602_write_char(j,k+2,' ');
  LCD1602_write_char(j,k+3,chang(c));
  LCD1602_write_char(j,k+4,chang(d));
}

/*********************************************************************************************************
** 函數(shù)名稱:  void main(void)
** 功能描述:  主函數(shù)
********************************************************************************************************/
void main(void)
{
UCHAR count = 0;
LCD_initial();
LCD_cls();
    LCD1602_write_string(1,3,"KeyBoard...");
Init_main();
init_keyboard();
delay(1000);
start=0;
send_byte(0xAA);
while(1)
{
  if(succes)
  {
   xianshi(infrared_R_DATA[0],infrared_R_DATA[1],2,2);   //第2行,3列開始顯示
   xianshi(infrared_R_DATA[2],infrared_R_DATA[3],2,8);  //第2行,9列
   if(infrared_R_DATA[0] == InfraredUserCode)
   {
    if(infrared_R_DATA[2]==0x17)   //切換鍵
      changbit= !changbit;   //changbit為0,發(fā)送數(shù)字;為1,發(fā)送字母
    else
     SendPS2(infrared_R_DATA[2]);
   }
   succes = 0;
  }
}
}
#ifndef __HS0038_h__
#define __HS0038_h__
/*---------------------------------------------------------
                   HS0038控制口定義
---------------------------------------------------------*/
#define Inte_Int    1  //外部中斷0/1
#define Inte_Time   1  //定時(shí)器0/1
#define Infrared_LED    P13  //led燈引腳定義
bit     succes = 0;    //接收成功位
UCHAR  infrared_Count = 0;  //接收成功值,其值代表連按的次數(shù)值。
UCHAR  infrared_R_DATA[4];  //接收后數(shù)據(jù)存入的數(shù)組
/*用戶碼:0x40 0xBF*/
#define InfraredUserCode 0x40//用戶碼位
/*---------------------------------------------------------
             HS0038控制口及中斷控制位定義
---------------------------------------------------------*/
#if Inte_Int==0     //中斷0
#define Receive P32   //中斷0引腳
#define Inte_I_Num 0  //中斷0中斷號
#define IT IT0
#define EX EX0
#define PX PX0
#endif
#if Inte_Int==1     //中斷1
#define Receive P33   //中斷1引腳
#define Inte_I_Num 2  //中斷1中斷號
#define IT IT1
#define EX EX1
#define PX PX1
#endif
#if Inte_Time==0    //定時(shí)器0
  #define ET ET0      //允許T/C0中斷
  #define TR TR0       //關(guān)定時(shí)器中斷
#define TH TH0
#define TL TL0
#endif
#if Inte_Time==1    //定時(shí)器1
  #define ET ET1      //允許T/C1中斷
  #define TR TR1       //關(guān)定時(shí)器中斷
#define TH TH1
#define TL TL1
#endif
/*---------------------------------------------------------
          紅外線的0、1電平區(qū)分的最低與最高值定義
---------------------------------------------------------*/
/*--晶振頻率:12MHZ---------------------------------------
    03  05 07  09    2B  34 7B     FF
|_______|---|__|---|_______|--------|____|----------------|
|    0   1     碼頭          第一個下降延
---------------------------------------------------------*/
/*紅外參數(shù):*/
#define TH_0L   0x03  //0的低位定時(shí)判斷值
#define TH_0H   0x05  //0的高位定時(shí)判斷值
#define TH_1L   0x07  //1的低位定時(shí)判斷值
#define TH_1H   0x09   //1的高位定時(shí)判斷值
#define CodeStartL 0x30  //碼頭低位定時(shí)判斷值
#define CodeStartH 0x40  //碼頭高位定時(shí)判斷值
#define CodeOverL 0x7B  //碼結(jié)束低位定時(shí)判斷值
/*---------------------------------------------------------
                   函數(shù)初始化Init_main();
---------------------------------------------------------*/
void Init_main(void)
{
  IP = 0x01;      //外部中斷為最大級
  IT1 = 1;         //INT下降沿中斷
  EX1 = 1;         //允許INT中斷
TMOD=0x10; //定時(shí)器1的方式為一
TH1 = 0x00;
TL1 = 0x00;
  ET1 = 0;        //關(guān)閉T/C0中斷
  TR1 = 0;         //關(guān)閉定時(shí)器
ET0 =1;
IT0 =1;
  EA = 1;         //開總中斷
}
/*---------------------------------------------------------
                   利用中斷接收數(shù)據(jù)程序
---------------------------------------------------------*/
void Int(void) interrupt 2
{
static UCHAR cont_R = 0xFF;        //定義紅外接收中斷個數(shù)的計(jì)數(shù)器
UCHAR num;          //定義用來存數(shù)組位置的變量
UCHAR list;          
EX1   =   0;        
TR   =   0;        
cont_R++;            //中斷計(jì)數(shù)開始
num  = (cont_R) / 8;       //計(jì)算保存到哪一個數(shù)組
list = (cont_R) % 8;       //計(jì)算保存到數(shù)組的哪一位置
//-------------------------------------------------------------------------------------------
if( TH >=TH_1L && TH <= TH_1H )     //讀取數(shù)據(jù),如果為1
{
  infrared_R_DATA[ num ] |= 0x01<<list;  //在計(jì)算出的數(shù)組向右移動一位
}
else if( TH >=TH_0L && TH <= TH_0H )     //讀取數(shù)據(jù),如果為0
{
  infrared_R_DATA[ num ] &= ~(0x01<<list);  //在計(jì)算出的數(shù)組向右移動一位
}
else if(TH >= CodeStartL && CodeStartH) //紅外碼頭檢測
{  
  infrared_Count++;        //紅外重復(fù)碼加
  if(cont_R>=31&&infrared_R_DATA[0]==0x40)succes = 1;  //只接收0X40的頭碼,大于32,接收成功    
  cont_R = 0xff;      //計(jì)數(shù)初始值
}
else if(TH >= CodeOverL)      //紅外碼頭的結(jié)束標(biāo)志
{
  infrared_Count = 0;
  cont_R = 0xff;
}
else
  succes = 0;         //接收失敗
//-------------------------------------------------------------------------------------------
Infrared_LED = !Infrared_LED;     //led燈取反閃爍
TH = 0x00;          //開定時(shí)器部分
TL = 0x00;
TR = 1;
EX1 = 1;
}
/*----------------------------------------------------------------------*/
#endif
*---------------------配置文件-------------------------------------------------*/
#ifndef _CONFIG_H_
#define _CONFIG_H_
#include <reg52.h>
#include ".\\Liquid Crystal LCD1602\\LCD1602_8.h"
#include "HS0038.h"
#define LED P13
sbit  clk  = P3^2; //定義鍵盤的時(shí)鐘腳(接中斷口0)
sbit  da   = P3^1;  //定義鍵盤的數(shù)據(jù)腳
#define KEY P24

#endif

大家是否心動了呢,心動了就行動吧!做起來。。。!

作者: 學(xué)無止境    時(shí)間: 2011-10-28 11:25

這么好的東西,怎么沒人發(fā)表意見呢?


作者: MLM    時(shí)間: 2011-11-5 00:50
怎么下載呢?
作者: 學(xué)無止境    時(shí)間: 2012-3-14 16:04
比較有意思的一個東東
作者: zy5306543    時(shí)間: 2012-3-20 09:31
支持原創(chuàng)!
作者: 學(xué)無止境    時(shí)間: 2012-3-22 14:09
沒有做不到,只有想不到
作者: 學(xué)無止境    時(shí)間: 2012-3-31 11:09
不讓好帖子沉下去
作者: 學(xué)無止境    時(shí)間: 2012-4-14 17:03
謝謝大家的支持啦
作者: kky800    時(shí)間: 2012-4-21 21:12
 支持一下,有空試試效果
作者: 宋明強(qiáng)    時(shí)間: 2012-4-23 23:59

好東西呀,喜歡,贊一個


作者: 學(xué)無止境    時(shí)間: 2012-5-2 11:24
頂起 頂頂
作者: 學(xué)無止境    時(shí)間: 2012-5-4 13:45
頂起 頂頂,不讓好帖子沉下去
作者: yemars    時(shí)間: 2012-5-4 13:56
ding~~~~~
作者: wy68688    時(shí)間: 2012-5-5 10:22
很好很強(qiáng)大
作者: 學(xué)無止境    時(shí)間: 2012-5-11 10:23
好帖,大家頂起下
作者: 學(xué)無止境    時(shí)間: 2012-5-11 10:25
頂起,這個大家可以自己做做
作者: yezhiyan    時(shí)間: 2012-5-15 22:27
好東西!  
作者: zjk103    時(shí)間: 2012-5-17 16:51
感覺挺不錯的,看看
作者: 學(xué)無止境    時(shí)間: 2012-5-27 10:06
好像代碼就是在上面
作者: chaoyue446    時(shí)間: 2012-6-11 12:18
好東西!!
作者: xacaluo    時(shí)間: 2013-2-25 14:17
支持原創(chuàng),蠻厲害的
作者: stevenchen    時(shí)間: 2013-5-16 19:55
對于新手的我有些地方我看不懂,但能看懂的地方真的很吸引人。
作者: 維修員熊    時(shí)間: 2013-5-27 22:23
確實(shí)是好東西 有時(shí)間作參考自己做一個

作者: 1156615097    時(shí)間: 2013-7-23 23:48
不錯的,好假貨,大家一起學(xué)習(xí)下

作者: linhuikui    時(shí)間: 2014-12-25 13:35
有點(diǎn)暈
作者: adasdasd    時(shí)間: 2014-12-26 23:43
謝謝分享!!!!
作者: 499705472    時(shí)間: 2015-1-14 10:24
支持一下,有空試試效果
作者: 云不肯說    時(shí)間: 2015-5-6 22:13
因?yàn)闆]的圖
作者: XiaoBei    時(shí)間: 2015-5-10 11:14

支持原創(chuàng),有空可以學(xué)習(xí)一下試試~




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 成人精品一区二区三区 | 国产三区视频在线观看 | 日韩欧美国产一区二区三区 | av毛片在线免费观看 | 中文字幕成人av | 一级黄在线观看 | av福利网站 | 久久中文视频 | 国精产品一区二区三区 | 日韩精品一区二区不卡 | 国产精品一区二区久久久久 | 日日操网站 | 在线一区二区三区 | 99爱在线视频 | 日韩中文字幕在线视频 | 中文字幕视频在线 | 亚洲91 | 99精品一级欧美片免费播放 | 久久精品免费观看 | 亚洲精品一区二区在线观看 | 午夜精品久久久久99蜜 | 国产精品视频免费观看 | 久热国产精品 | 国内成人免费视频 | 一区二区三区在线看 | 久久久久久久综合色一本 | 国产精品久久久久久久午夜 | 日韩中文字幕在线视频 | 婷婷久久网 | 91天堂网| 亚洲精品久久久久中文字幕欢迎你 | 色一情一乱一伦一区二区三区 | 久草资源网站 | 欧美日韩综合一区 | 欧美区在线 | 午夜看电影在线观看 | 国产精品国产三级国产aⅴ无密码 | 高清黄色毛片 | 日韩精品一区二区三区中文在线 | 亚卅毛片 | 久久里面有精品 |