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

📄 pushkey.lst

📁 QH_MCU_V1.1单片机C源码. 内含实验程序 这是修改版.
💻 LST
字号:
C51 COMPILER V7.07   PUSHKEY                                                               09/21/2007 13:40:01 PAGE 1   


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

stmt level    source

   1          #include <REG51.H>
   2          
   3          #define uchar unsigned char
   4          //带点显示
   5          //unsigned char LedCode[]={0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF,0xF7,0xFC,0xB9,0XDE,0xF9,0xF1
             -};
   6          //不带点显示
   7          unsigned char   LedCode[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0X5E,0x79,0x71};
   8          unsigned char   Sel[]={0x80,0x81,0x82,0x83};
   9          uchar key = 0x00;
  10          void delay10ms(unsigned char time)
  11          {
  12   1      unsigned char a,b,c;
  13   1      for(a=0;a<time;a++)
  14   1      for(b=0;b<10;b++)
  15   1        for(c=0;c<120;c++)
  16   1        ;
  17   1      }
  18          
  19          void display(uchar key)
  20           {
  21   1          if(key <= 9)
  22   1              {
  23   2           P2 = 0x10;
  24   2                 P0 = 0x1f;
  25   2                 P2 = 0x00;
  26   2                 P2 = 0x80;
  27   2                 P0 = LedCode[0];
  28   2               }
  29   1               else
  30   1               {
  31   2           P2 = 0x10;
  32   2                 P0 = 0x1f;
  33   2                 P2 = 0x00;
  34   2                 P2 = 0x80;
  35   2                 P0 = LedCode[1];
  36   2               }
  37   1          delay10ms(2);
  38   1               P2 = 0x00;
  39   1               P2 = 0x10;
  40   1               P0 = 0x0f;
  41   1           P2 = 0x00;
  42   1               P2 = 0x80;
  43   1               switch(key)
  44   1               {
  45   2               case 2:
  46   2                    P0 = LedCode[2];
  47   2                        break;
  48   2               case 3:
  49   2                    P0 = LedCode[3];
  50   2                        break;
  51   2           case 4:
  52   2                    P0 = LedCode[4];
  53   2                        break;
  54   2               case 5:
C51 COMPILER V7.07   PUSHKEY                                                               09/21/2007 13:40:01 PAGE 2   

  55   2                    P0 = LedCode[5];
  56   2                        break;
  57   2           case 6:
  58   2                    P0 = LedCode[6];
  59   2                        break;
  60   2           case 7:
  61   2                    P0 = LedCode[7];
  62   2                        break;
  63   2               case 8:
  64   2                    P0 = LedCode[8];
  65   2                        break;
  66   2               case 9:
  67   2                    P0 = LedCode[9];
  68   2                        break;
  69   2           case 10:
  70   2                    P0 = LedCode[0];
  71   2                        break;
  72   2               case 11:
  73   2                    P0 = LedCode[1];
  74   2                        break;
  75   2           case 12:
  76   2                    P0 = LedCode[2];
  77   2                        break;
  78   2           case 13:
  79   2                    P0 = LedCode[3];
  80   2                        break;
  81   2               case 14:
  82   2                    P0 = LedCode[4];
  83   2                        break;
  84   2               case 15:
  85   2                    P0 = LedCode[5];
  86   2                        break;
  87   2           case 16:
  88   2                    P0 = LedCode[6];
  89   2                        break;
  90   2           case 17:
  91   2                    P0 = LedCode[7];
  92   2                        break;
  93   2               default:
  94   2                    P0 = 0x3f;
  95   2                        break;
  96   2               }
  97   1               delay10ms(2);
  98   1       }
  99          
 100          void KeyScan(void) //按键扫描子程序
 101          {
 102   1      
 103   1      uchar temp;
 104   1      
 105   1      P2 = 0x10;
 106   1      P0 = 0xf5;
 107   1      P1 = 0xFF;
 108   1      temp = P1;
 109   1      temp &= 0xFF;
 110   1      if(temp !=0xFF)
 111   1      {
 112   2        delay10ms(1);
 113   2        temp = P1;
 114   2        temp &= 0xFF;
 115   2      if(temp !=0xFF) 
 116   2      {
C51 COMPILER V7.07   PUSHKEY                                                               09/21/2007 13:40:01 PAGE 3   

 117   3         temp = P1;
 118   3         temp &= 0xFF;
 119   3      
 120   3         switch(temp)
 121   3        {
 122   4        case 0xfe:
 123   4             key = 2;
 124   4             break;
 125   4        case 0xfd:
 126   4             key = 3;
 127   4             break;
 128   4        case 0xfb:
 129   4             key = 4; 
 130   4             break;
 131   4        case 0xf7:
 132   4             key = 5;
 133   4             break;
 134   4        case 0xef:
 135   4             key = 6;
 136   4             break;
 137   4        case 0xdf:
 138   4             key = 7;
 139   4             break;
 140   4        case 0xbf:
 141   4             key = 8; 
 142   4             break;
 143   4        case 0x7f:
 144   4             key = 9;
 145   4             break;
 146   4        default:
 147   4             key = 00;
 148   4             break;
 149   4        }
 150   3      
 151   3       }
 152   2      
 153   2      }
 154   1      
 155   1      P2 = 0x00; 
 156   1      P2 = 0x10;
 157   1      P0 = 0xf6;
 158   1      P1 = 0xFF;
 159   1      temp = P1;
 160   1      temp &= 0xFF;
 161   1      if(temp !=0xFF)
 162   1      {
 163   2        delay10ms(1);
 164   2        temp = P1;
 165   2        temp &= 0xFF;
 166   2      if(temp !=0xFF) 
 167   2      {
 168   3         temp = P1;
 169   3         temp &= 0xFF;
 170   3      
 171   3         switch(temp)
 172   3        {
 173   4        case 0xfe:
 174   4             key = 10; 
 175   4                 break;
 176   4        case 0xfd:
 177   4             key = 11;
 178   4                 break;
C51 COMPILER V7.07   PUSHKEY                                                               09/21/2007 13:40:01 PAGE 4   

 179   4        case 0xfb:
 180   4             key = 12;
 181   4                 break;
 182   4        case 0xf7:
 183   4             key = 13; 
 184   4                 break;
 185   4        case 0xef:
 186   4             key = 14;
 187   4                 break;
 188   4        case 0xdf:
 189   4             key = 15;
 190   4                 break;
 191   4        case 0xbf:
 192   4             key = 16;
 193   4                 break;
 194   4        case 0x7f:
 195   4             key = 17;
 196   4                 break;
 197   4        default:
 198   4             key = 00;
 199   4                 break;
 200   4        }
 201   3      
 202   3       }
 203   2      P2 = 0x00;
 204   2      }
 205   1      
 206   1      
 207   1      
 208   1      }
 209          
 210          void main()
 211          {
 212   1              while(1)
 213   1              {
 214   2      
 215   2            display(key);
 216   2            KeyScan();
 217   2      //        delay10ms(2);
 218   2              }
 219   1      }
 220          
 221          
 222          
 223          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    457    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     21       1
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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