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

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

?? ps2_bin.lst

?? ps2的驅動
?? LST
?? 第 1 頁 / 共 3 頁
字號:
C51 COMPILER V7.07   PS2_BIN                                                               05/26/2005 16:04:50 PAGE 1   


C51 COMPILER V7.07, COMPILATION OF MODULE PS2_BIN
OBJECT MODULE PLACED IN PS2_BIN.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE PS2_BIN.C BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /*****************************************************************************/
   2          //main.c
   3          //功能:從PS/2口接受鍵盤信息,解碼成ACSII碼,通過UART發送出去,并且控制鍵盤
   4          //修改:
   5          //時間:2006-7-8
   6          //作者:R.S.J
   7          /*****************************************************************************/
   8          
   9          #include <reg51.h>
  10          #include <intrins.h>
  11          
  12          //#include "PS2.h"
  13          
  14          #define EINT (EA = 1)
  15          #define DINT (EA = 0)
  16          
  17          #define MAXBUFFER 15
  18          
  19          #define WAITFORKEYBOARDPULSE  while(!scl); while(scl)
  20          
  21          #define COMMAND_RESET     0xFF  //命令:復位鍵盤
  22          #define COMMAND_READID    0xF2 //命令:讀鍵盤ID
  23          #define COMMAND_SETSTATUS 0xED //命令:設置狀態CapsLock,NumLock,ScrollLock
  24          #define COMMAND_SETRATE   0xF3 //命令:設置速率,延時
  25          #define COMMAND_ENABLE    0xF4 //命令:使能鍵盤
  26          #define CAPSLOCK_EN       0x04  //使能CapsLock  燈
  27          #define NUMLOCK_EN        0x02  //使能NumLock   燈
  28          #define SCROLLLOCK_EN     0x01  //使能ScrollLock燈
  29          #define CAPSLOCK_DIS      0x03  //關閉CapsLock燈
  30          #define NUMLOCK_DIS       0x05  //關閉NumLock燈
  31          #define SCROLLLOCK_DIS    0x06 //關閉ScrollLock燈
  32          #define DISALL            0x00  //關閉所有燈
  33          
  34          
  35          #define CODE_POST     0xAA  //鍵盤上電自檢成功 Power On Self Test
  36          #define CODE_ACK      0xFA  //鍵盤應答碼
  37          #define CODE_ECHO     0xEE  //鍵盤的回應碼
  38          #define CODE_BREAK    0xF0  //斷碼
  39          #define CODE_EXTEND   0xE0  //擴展碼
  40          #define CODE_PAUSE    0xE1  //Pause鍵起始碼 E1+14+77/E1+F0+14/F0+77
  41          #define CODE_LSHIFT   0x12  //左Shift鍵通碼
  42          #define CODE_RSHIFT   0x59  //右Shift鍵通碼
  43          #define CODE_LCTRL    0x14  //左CTRL鍵通碼
  44          #define CODE_RCTRL    0x14  //右CTRL鍵通碼 0xE0,0x14
  45          #define CODE_LALT     0x11  //左ALT鍵通碼
  46          #define CODE_RALT     0x11  //右ALT鍵通碼  0xE0,0x11
  47          #define CODE_NUMLOCK  0x77  //NumLock鍵
  48          #define CODE_CAPSLOCK 0x58  //CapsLock鍵
  49          #define CODE_SCROLLLOCK 0x7E//SCROLLLOCK鍵
  50          #define nodefinedkey   0x00//
  51          
  52          #define OUTPORT P2    //電平輸出口定義
  53          
  54          /* 函數定義 */
  55          unsigned char ReadPS2(); //讀PS2端口獲取PS2發送的數據
C51 COMPILER V7.07   PS2_BIN                                                               05/26/2005 16:04:50 PAGE 2   

  56          void KeyScan();          //獲得鍵值
  57          void KeyTransmit();      //發送鍵值
  58          void Order(unsigned char);            //向鍵盤發送命令
  59          //void KickDog();          //喂狗
  60          void Delay(unsigned char);
  61          void LedLock(unsigned char);
  62          /* 變量定義 */
  63          sbit sda = P3^4;     //P3.7做為數據線//^^^^^^^^^^^^^^^^^^^^^^
  64          sbit scl = P3^2;     //P3.2做為時鐘線
  65          sbit key_sw = P1^1;  //P1.2作為鍵盤電源開關
  66          
  67          int  i;
  68          unsigned char KeyCodeBuff[MAXBUFFER+1] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};//鍵值緩存
  69          unsigned char KeyCodeSum      = 0; //鍵碼數
  70          bit KeyFlag                   = 0; //有鍵標志
  71          bit KeyUpFlag                 = 0; //鍵彈起標志
  72          bit KeyExtendFlag             = 0; //擴展鍵標志
  73          bit KeyLedLockFlag            = 0; //三個Led鍵被按下的標志
  74          bit KeyBoardConnectFlag       = 0; //鍵盤連接標志
  75          bit KeyPauseFlag              = 0; //Pause鍵標志
  76          bit KeyMakeCodeFlag           = 0; //鍵盤發送通碼標志
  77          /*
  78          bit CapsLockFlag              = 0; //CapsLock標志
  79          bit NumLockFlag               = 0; //NumLock標志
  80          bit ScrollLockFlag            = 0; //ScrollLock標志
  81          */
  82          unsigned char E1flag                    = 0;//我家的
  83          unsigned char E0flag                    = 0;//
  84          ///////////////////////////////////////////
  85          unsigned char KeyIDLo   = 0; //鍵盤ID低字節
  86          unsigned char KeyIDHi   = 0; //鍵盤ID高字節
  87          unsigned char LedStatus = 0; //NumLock,CapsLock,ScrollLock燈控制
  88          unsigned char dat[6]= 0x00;  // 輸出數據緩存
  89          unsigned char sum=0x00;
  90          /*********************************************************/
  91          //函數:main()
  92          //功能:主函數
  93          //輸入:無
  94          //輸出:無
  95          //描述:
  96          /*********************************************************/
  97          unsigned char code keyval[]=
  98          {
  99          0x76,0x05,0x06,0x04,0x0c,0x03,0x0b,0x83,0x0a,0x01,0x09,0x78,0x07,
 100          0x0e,0x16,0x1e,0x26,0x25,0x2e,0x36,0x3d,0x3e,0x46,0x45,0x4e,0x55,
 101          0x5d,0x66,0x0d,0x15,0x1d,0x24,0x2d,0x2c,0x35,0x3c,0x43,0x44,0x4d,
 102          0x54,0x5b,0x58,0x1c,0x1b,0x23,0x2b,0x34,0x33,0x3b,0x42,0x4b,0x4c,
 103          0x52,0x5a,0x12,0x1a,0x22,0x21,0x2a,0x32,0x31,0x3a,0x41,0x49,0x4a,
 104          0x59,0x14,0x11,0x29,0x7e,0x77,0x7c,0x7b,0x6c,0x75,0x7d,0x6b,0x73,
 105          0x74,0x69,0x72,0x7a,0x70,0x71,0x69,0x79,
 106          
 107          };
 108          unsigned char code e0_keyval[]=
 109          {0x11,0x1F,0x14,0x12,0x70,0x6c,0x7d,0x71,0x69,0x7a,0x4a,0x5a,0x75,0x6b,0x72,0x74,0x5e,0x3f,0x37,0x7c,0x27,
             -0x2f};
 110          unsigned char code pausekey[]={0xe1,0x14};
 111          //unsigned char code pausekey[]={0xe1,0x14}
 112          
 113          void main()
 114          {
 115   1      DINT; //關中斷
 116   1              
C51 COMPILER V7.07   PS2_BIN                                                               05/26/2005 16:04:50 PAGE 3   

 117   1      for(i=0;i<1000;i++)
 118   1                      ;//延時穩定
 119   1              
 120   1              /*  初始化變量  */
 121   1      sda = 0;
 122   1      scl = 0;      //端口設置為高
 123   1      key_sw = 1;   //關鍵盤
 124   1              for(i=0;i<1000;i++)
 125   1                      Delay(10);
 126   1              for(i = 0;i<16;i++)
 127   1              {
 128   2                      KeyCodeBuff[i] = 0;
 129   2              }
 130   1              KeyCodeSum              = 0;
 131   1              KeyFlag                 = 0;
 132   1              KeyUpFlag               = 0;
 133   1              KeyExtendFlag           = 0;
 134   1              KeyLedLockFlag          = 0;
 135   1              KeyBoardConnectFlag     = 0;
 136   1              KeyPauseFlag            = 0;
 137   1              KeyMakeCodeFlag         = 0;
 138   1              KeyIDLo                 = 0;
 139   1              KeyIDHi                 = 0;
 140   1              LedStatus               = 0;
 141   1      //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 142   1      TMOD=0x22; // 定時器1 工作于方式2
 143   1      //20
 144   1      SCON=0x40; // 串口工作于方式1
 145   1      TH1=0xfa; //裝入初值,22.1184MHZ 的晶振,9600 的波特率
 146   1      TL1=0xfa;
 147   1      TL0 = 0xff;
 148   1      TH0 = 0xff;
 149   1      PCON=0x00; //波特率無倍增
 150   1      TR1=1; //開啟定時器1 開始工作
 151   1      TR0=1; //開啟定時器0 開始工作
 152   1      //EA=1;
 153   1      WDT_CONTR = 0x3f;   //開硬件狗
 154   1      ES=1;   
 155   1      //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 156   1      /*
 157   1              TMOD = 0x22;  //T1為波特率發生器設置19200波特率
 158   1              //T0為采樣鍵盤時鐘發生器
 159   1              TL1 = 0xFD;
 160   1              TH1 = 0xFD;
 161   1      // TL0 =
 162   1      // TH0 =
 163   1      PCON |= 0x80; //SMOD設置為1
 164   1      SCON = 0x50;  //串口控制寄存器
 165   1            //工作方式
 166   1            //非多機通訊方式
 167   1            //允許接收
 168   1            //
 169   1      
 170   1      TR1 = 1;      //定時器1開始
 171   1      */
 172   1              IT0 = 0;      //低電平引起中斷
 173   1      
 174   1              ES = 1;       //開串口中斷
 175   1              EX0 = 1;      //開外部0中斷
 176   1              key_sw = 0;   //開鍵盤電源
 177   1              scl = 1;
 178   1              sda = 1;
C51 COMPILER V7.07   PS2_BIN                                                               05/26/2005 16:04:50 PAGE 4   

 179   1                
 180   1      Delay(1);
 181   1              while(!KeyBoardConnectFlag)
 182   1                      ReadPS2();//等待鍵盤自檢成功
 183   1                      
 184   1              Order(COMMAND_RESET);   //復位鍵盤
 185   1              ReadPS2();              //等待鍵盤應答
 186   1              Delay(5);
 187   1              
 188   1              Order(COMMAND_SETSTATUS);//設置狀態燈CapsLock,NumLock,ScrollLock
 189   1              ReadPS2();               //等待鍵盤應答
 190   1              LedStatus = DISALL;
 191   1              Order(LedStatus);        //關閉所有燈
 192   1              ReadPS2();               //等待鍵盤應答
 193   1              /*
 194   1              Order(COMMAND_READID);   //讀鍵盤ID
 195   1              ReadPS2();               //等待鍵盤應答
 196   1              KeyIDLo = ReadPS2();     //獲得鍵盤ID低字節
 197   1              KeyIDHi = ReadPS2();     //獲得鍵盤ID高字節
 198   1              */
 199   1              LedStatus = NUMLOCK_EN;  //開NumLock燈
 200   1              Order(COMMAND_SETSTATUS);   
 201   1              ReadPS2();               //等待應答
 202   1              Order(LedStatus);        //
 203   1              ReadPS2();               //等待應答
 204   1              Order(COMMAND_SETRATE);  //設置速率延時
 205   1              ReadPS2();               //等待應答
 206   1              Order(0x20);             //500ms/30
 207   1              ReadPS2();
 208   1              Order(COMMAND_ENABLE);   //使能鍵盤
 209   1              ReadPS2();
 210   1              Order(COMMAND_SETRATE);  //設置速率延時
 211   1              ReadPS2();
 212   1              Order(0x20);             //
 213   1              ReadPS2();
 214   1              
 215   1              Delay(200);              //延時
 216   1              
 217   1              EINT;                    //開總中斷
 218   1           
 219   1      while(1)
 220   1      {
 221   2      //  KeyScan();//掃描鍵盤
 222   2        if(KeyFlag == 1)
 223   2        {
 224   3         KeyFlag = 0;
 225   3         KeyTransmit();//
 226   3        
 227   3        }
 228   2      
 229   2      WDT_CONTR = 0x3f;// 喂狗
 230   2      
 231   2      }
 232   1      }
 233          
 234          /*********************************************************/
 235          //函數:uart
 236          //功能:串口中斷

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲最新视频在线观看| 日本丰满少妇一区二区三区| 国产成人精品综合在线观看| 91小视频在线免费看| 欧美嫩在线观看| 国产女同性恋一区二区| 三级久久三级久久久| 99视频精品在线| 日韩一区二区三| 亚洲一区二区三区三| 国产91精品露脸国语对白| 91高清在线观看| 国产亚洲精品aa午夜观看| 日本vs亚洲vs韩国一区三区二区| 91亚洲国产成人精品一区二区三| 久久久国际精品| 蜜桃视频在线一区| 欧美日韩另类国产亚洲欧美一级| 亚洲色图欧美偷拍| 成人黄色在线视频| 日本一区二区在线不卡| 国产一区亚洲一区| 精品国产91久久久久久久妲己| 亚洲国产aⅴ天堂久久| av资源网一区| 国产精品天干天干在观线| 国产剧情一区二区| 精品少妇一区二区| 秋霞午夜鲁丝一区二区老狼| 欧美日韩成人综合天天影院| 一个色综合网站| 91黄色在线观看| 亚洲综合一区二区三区| 在线看不卡av| 日韩综合小视频| 日韩午夜精品电影| 精品一区二区三区免费毛片爱| 日韩一区二区三区三四区视频在线观看 | 亚洲成人在线免费| 91福利精品第一导航| 亚洲欧美一区二区久久 | 成人免费一区二区三区视频| 国产a区久久久| 中国色在线观看另类| 成人中文字幕电影| 亚洲欧洲三级电影| 色婷婷综合久久久中文一区二区| 亚洲四区在线观看| 欧美精品欧美精品系列| 日韩中文字幕麻豆| 精品成人a区在线观看| 国产精品一二三四区| 18成人在线视频| 欧美另类z0zxhd电影| 久久 天天综合| 欧美国产精品久久| 一本大道久久精品懂色aⅴ| 亚洲电影在线播放| 精品理论电影在线| 99久久婷婷国产| 婷婷国产在线综合| 久久午夜免费电影| 色噜噜狠狠成人网p站| 奇米四色…亚洲| 国产性色一区二区| 欧美午夜精品久久久久久超碰 | 国产麻豆成人精品| 国产欧美一区二区精品久导航 | 艳妇臀荡乳欲伦亚洲一区| 欧美一卡2卡3卡4卡| 国产91丝袜在线播放| 亚洲一区免费在线观看| 亚洲精品在线免费播放| 一本到一区二区三区| 黄色成人免费在线| 亚洲一级在线观看| 久久麻豆一区二区| 欧美色图在线观看| 成人一区二区三区中文字幕| 五月婷婷激情综合| 亚洲天堂久久久久久久| 欧美v亚洲v综合ⅴ国产v| 色综合久久综合| 国产一区二区影院| 日韩和的一区二区| 亚洲三级在线免费观看| 久久久精品国产99久久精品芒果| 欧美日韩国产天堂| 色菇凉天天综合网| 国产一区二区三区高清播放| 午夜精品爽啪视频| 亚洲欧美色一区| 欧美国产综合一区二区| 日韩三级视频在线看| 91国偷自产一区二区三区成为亚洲经典| 韩国精品一区二区| 三级欧美在线一区| 香蕉加勒比综合久久| 日韩毛片视频在线看| 国产精品免费视频一区| 亚洲精品一区二区三区福利 | 成人黄色a**站在线观看| 麻豆中文一区二区| 午夜激情综合网| 依依成人精品视频| 亚洲欧洲精品天堂一级| 亚洲国产成人自拍| 国产人伦精品一区二区| 日韩欧美一区在线| 欧美日韩一二三区| 欧美日韩精品一区二区三区蜜桃| 99久久久久久| 91视频免费看| 色婷婷香蕉在线一区二区| 91香蕉视频mp4| 一本色道久久综合亚洲精品按摩| 成人伦理片在线| www.成人在线| 国产激情精品久久久第一区二区| 九色综合国产一区二区三区| 蜜桃av一区二区在线观看| 丝袜国产日韩另类美女| 日韩精品五月天| 麻豆国产欧美日韩综合精品二区| 日韩av电影一区| 久久精品国产精品青草| 黑人巨大精品欧美黑白配亚洲 | 夜夜精品浪潮av一区二区三区| 国产精品伦理一区二区| 综合激情成人伊人| 亚洲中国最大av网站| 亚洲国产综合色| 日韩中文字幕区一区有砖一区| 蜜桃一区二区三区在线| 国产乱色国产精品免费视频| 国产精品一二二区| 9人人澡人人爽人人精品| 91麻豆文化传媒在线观看| 欧美午夜在线观看| 91精品国产全国免费观看 | 国产一区二区免费视频| 国产一区二区按摩在线观看| 成人黄色小视频| 欧美另类videos死尸| 精品国产一区久久| 中文字幕一区二区三区在线观看 | 国产精品九色蝌蚪自拍| 亚洲综合一区在线| 久久不见久久见免费视频1| 99视频精品全部免费在线| 欧美日韩亚洲国产综合| 久久久久99精品一区| 亚洲一区在线看| 国产最新精品精品你懂的| 99久久精品免费看国产免费软件| 欧美精品视频www在线观看| 久久精品一区二区三区av| 一区二区三区 在线观看视频| 日本va欧美va精品发布| 成a人片亚洲日本久久| 91精品国产综合久久福利| 日韩美女啊v在线免费观看| 日韩高清中文字幕一区| av在线不卡电影| 日韩欧美国产一区在线观看| 亚洲精品免费看| 国产福利一区二区三区视频在线| 欧美中文字幕久久| 国产亚洲欧美激情| 日本中文字幕一区二区视频| 成人动漫av在线| 日韩欧美在线1卡| 午夜天堂影视香蕉久久| 国产成人综合精品三级| 69p69国产精品| 亚洲一区二区av电影| 国产suv精品一区二区883| 欧美精品在线一区二区三区| 中文字幕一区二区三区在线播放| 久久草av在线| 欧美一区二区三区在线观看 | 日韩av一二三| 欧美亚洲综合色| 成人免费在线播放视频| 国产不卡在线播放| 久久久无码精品亚洲日韩按摩| 日韩和欧美一区二区| 欧美日韩一区二区不卡| 亚洲精选免费视频| 成人精品电影在线观看| 久久久国际精品| 国产精品一级黄| 久久―日本道色综合久久| 久久精品国产99国产精品| 欧美精品在线观看播放| 午夜精品久久久久久久久久| 91免费看`日韩一区二区| 欧美激情一二三区| 国产精品一卡二卡| 日本一区二区三区四区|