⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key.lst

📁 本人设计的用802051实现的键盘程序的识别代码。系统采用定时查询
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V4.01,  KEY                                                                   05/09/02  16:14:10  PAGE 1   


DOS C51 COMPILER V4.01, COMPILATION OF MODULE KEY
OBJECT MODULE PLACED IN D:\WZY\KEYTIME7\KEY.OBJ
COMPILER INVOKED BY: C:\WAVE\P51\C51.EXE D:\WZY\KEYTIME7\KEY.C DB SB OE OT(0) 

stmt level    source

   1          #include "AT89X52.H"
   2          
   3          sbit CLOCK=P3^5;
   4          int K1ST=0;
   5          int K2CD=0;
   6          int longkey=0;
   7          
   8          sbit OUT0=P1^0;
   9          sbit OUT1=P1^1;
  10          sbit OUT2=P1^2;
  11          sbit OUT3=P1^3;
  12          
  13          sbit IN0=P1^4;
  14          sbit IN1=P1^5;
  15          sbit IN2=P1^6;
  16          sbit IN3=P1^7;
  17          sbit IN4=P3^7;
  18          
  19          unsigned char KeyCode;
  20          
  21          int KeyOn()
  22          {
  23   1         int i;
  24   1         int key0;
  25   1         char key1;
  26   1      //   P3=0x7F;
  27   1         P1=0xF0;
  28   1      
  29   1         key0=P1;
  30   1         key0=key0&0x00F0;
  31   1      
  32   1         IN4=1;
  33   1         key1=IN4;
  34   1         key1=key1&0x01;
  35   1      
  36   1         if(key0==0xF0&&key1==0x01)
  37   1            return 0;
  38   1          else return 1;
  39   1      }
  40          
  41          void init_timer0(void)
  42          {
  43   1          TMOD&=0xF0;
  44   1          TMOD|=0x1;
  45   1          TL0=0xF0;
  46   1          TH0=0xD8;
  47   1          ET0=1;
  48   1          TR0=1;
  49   1          PT0=1;
  50   1          EA=1;
  51   1      
  52   1       }
  53          
  54           timer_isr()interrupt 1
  55           {
  56   1        unsigned char keynum;
  57   1        int i;
  58   1        EA=0;
  59   1      
C51 COMPILER V4.01,  KEY                                                                   05/09/02  16:14:10  PAGE 2   

  60   1        TL0=0xF0;
  61   1        TH0=0xD8;
  62   1      
  63   1      
  64   1        if(KeyOn()==1)
  65   1        {
  66   2           if(K1ST==1)
  67   2           {
  68   3              if(K2CD==0)
  69   3              {
  70   4                 K2CD=1;
  71   4      
  72   4             //第一列
  73   4      
  74   4                 P1=0xFE;
  75   4      
  76   4                 keynum=IN0;
  77   4                 if(keynum==0)
  78   4                 {
  79   5                   KeyCode=1;
  80   5                   P3=0xE1;
  81   5                   }
  82   4      
  83   4                 keynum=IN1;
  84   4                 if(keynum==0)
  85   4                   {
  86   5                    KeyCode=5;
  87   5                    P3=0xE5;
  88   5                    }
  89   4      
  90   4                 keynum=IN2;
  91   4                 if(keynum==0)
  92   4                 {
  93   5                   KeyCode=9;
  94   5                   P3=0xE9;
  95   5                 }
  96   4      
  97   4                 keynum=IN3;
  98   4                 if(keynum==0)
  99   4                 {
 100   5                   KeyCode=13;
 101   5                   P3=0xEd;
 102   5                 }
 103   4                 IN4=1;
 104   4                 keynum=IN4;
 105   4                 if(keynum==0)
 106   4                 {
 107   5                   KeyCode=17;
 108   5                   P3=0xF1;
 109   5                 }
 110   4                 //The second column
 111   4      
 112   4                 P1=0xFD;
 113   4      
 114   4                 keynum=IN0;
 115   4                 if(keynum==0)
 116   4                 {
 117   5                   KeyCode=2;
 118   5                   P3=0xE2;
 119   5                 }
 120   4      
 121   4                 keynum=IN1;
 122   4                 if(keynum==0)
 123   4                 {
 124   5                   KeyCode=6;
 125   5                   P3=0xE6;
C51 COMPILER V4.01,  KEY                                                                   05/09/02  16:14:10  PAGE 3   

 126   5                 }
 127   4      
 128   4                 keynum=IN2;
 129   4                 if(keynum==0)
 130   4                 {
 131   5                   KeyCode=10;
 132   5                   P3=0xEA;
 133   5                 }
 134   4      
 135   4                 keynum=IN3;
 136   4                 if(keynum==0)
 137   4                 {
 138   5                   KeyCode=14;
 139   5                   P3=0xEE;
 140   5                 }
 141   4                 IN4=1;
 142   4                 keynum=IN4;
 143   4                 if(keynum==0)
 144   4                 {
 145   5                   KeyCode=18;
 146   5                   P3=0xF2;
 147   5                 }
 148   4                //The third column
 149   4      
 150   4                 P1=0xFB;
 151   4                 keynum=IN0;
 152   4                 if(keynum==0)
 153   4                 {
 154   5                   KeyCode=3;
 155   5                   P3=0xE3;
 156   5                 }
 157   4      
 158   4                 keynum=IN1;
 159   4                 if(keynum==0)
 160   4                 {
 161   5                   KeyCode=7;
 162   5                   P3=0xE7;
 163   5                 }
 164   4      
 165   4                 keynum=IN2;
 166   4                 if(keynum==0)
 167   4                 {
 168   5                   KeyCode=11;
 169   5                   P3=0xEB;
 170   5                 }
 171   4      
 172   4                 keynum=IN3;
 173   4                 if(keynum==0)
 174   4                 {
 175   5                   KeyCode=15;
 176   5                   P3=0xEF;
 177   5                 }
 178   4                 IN4=1;
 179   4                 keynum=IN4;
 180   4                 if(keynum==0)
 181   4                 {
 182   5                   KeyCode=19;
 183   5                   P3=0xF3;
 184   5                 }
 185   4                 //The fourth column
 186   4      
 187   4                 P1=0xF7;
 188   4      
 189   4                 keynum=IN0;
 190   4                 if(keynum==0)
 191   4                 {
C51 COMPILER V4.01,  KEY                                                                   05/09/02  16:14:10  PAGE 4   

 192   5                   KeyCode=4;
 193   5                   P3=0xE4;
 194   5                 }
 195   4                 keynum=IN1;
 196   4                 if(keynum==0)
 197   4                 {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -