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

📄 13+

📁 13例常用仿真电路
💻
字号:
C51 COMPILER V7.06   4X4KEYBOARD                                                           09/25/2008 12:56:47 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE 4X4KEYBOARD
OBJECT MODULE PLACED IN 4x4keyboard.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 4x4keyboard.c DEBUG OBJECTEXTEND

stmt level    source

   1          #include <AT89X51.H> 
   2          unsigned char code table[]={0x3f,0x06,0x5b,0x4f, 
   3                                      0x66,0x6d,0x7d,0x07, 
   4                                      0x7f,0x6f,0x77,0x7c, 
   5                                      0x39,0x5e,0x79,0x71}; 
   6          unsigned char temp; 
   7          unsigned char key; 
   8          unsigned char i,j; 
   9            
  10            
  11          void main(void) 
  12          { 
  13   1        while(1) 
  14   1          { 
  15   2            P3=0xff; 
  16   2            P3_4=0; 
  17   2            temp=P3; 
  18   2            temp=temp & 0x0f; 
  19   2            if (temp!=0x0f) 
  20   2              { 
  21   3                for(i=50;i>0;i--) 
  22   3                for(j=200;j>0;j--); 
  23   3                temp=P3; 
  24   3                temp=temp & 0x0f; 
  25   3                if (temp!=0x0f) 
  26   3                  { 
  27   4                    temp=P3; 
  28   4                    temp=temp & 0x0f;              
  29   4                    switch(temp) 
  30   4                      { 
  31   5                        case 0x0e: 
  32   5                          key=3; 
  33   5                          break; 
  34   5                        case 0x0d: 
  35   5                          key=2; 
  36   5                          break; 
  37   5                        case 0x0b: 
  38   5                          key=1; 
  39   5                          break; 
  40   5                        case 0x07: 
  41   5                          key=0; 
  42   5                          break; 
  43   5                      } 
  44   4                    temp=P3; 
  45   4            
  46   4                    P0=table[key]; 
  47   4                    temp=temp & 0x0f;              
  48   4                    while(temp!=0x0f) 
  49   4                      { 
  50   5                        temp=P3; 
  51   5                        temp=temp & 0x0f;              
  52   5                      } 
  53   4                  } 
  54   3              } 
  55   2        
C51 COMPILER V7.06   4X4KEYBOARD                                                           09/25/2008 12:56:47 PAGE 2   

  56   2            P3=0xff; 
  57   2            P3_5=0; 
  58   2            temp=P3; 
  59   2            temp=temp & 0x0f; 
  60   2            if (temp!=0x0f) 
  61   2              { 
  62   3                for(i=50;i>0;i--) 
  63   3                for(j=200;j>0;j--); 
  64   3                temp=P3; 
  65   3                temp=temp & 0x0f; 
  66   3                if (temp!=0x0f) 
  67   3                  { 
  68   4                    temp=P3; 
  69   4                    temp=temp & 0x0f;              
  70   4                    switch(temp) 
  71   4                      { 
  72   5                        case 0x0e: 
  73   5                          key=7; 
  74   5                          break; 
  75   5                        case 0x0d: 
  76   5                          key=6; 
  77   5                          break; 
  78   5                        case 0x0b: 
  79   5                          key=5; 
  80   5                          break; 
  81   5                        case 0x07: 
  82   5                          key=4; 
  83   5                          break; 
  84   5                      } 
  85   4                    temp=P3; 
  86   4      
  87   4                    P0=table[key]; 
  88   4                    temp=temp & 0x0f;              
  89   4                    while(temp!=0x0f) 
  90   4                      { 
  91   5                        temp=P3; 
  92   5                        temp=temp & 0x0f;              
  93   5                      } 
  94   4                  } 
  95   3              } 
  96   2        
  97   2            P3=0xff; 
  98   2            P3_6=0; 
  99   2            temp=P3; 
 100   2            temp=temp & 0x0f; 
 101   2            if (temp!=0x0f) 
 102   2              { 
 103   3                for(i=50;i>0;i--) 
 104   3                for(j=200;j>0;j--); 
 105   3                temp=P3; 
 106   3                temp=temp & 0x0f; 
 107   3                if (temp!=0x0f) 
 108   3                  { 
 109   4                    temp=P3; 
 110   4                    temp=temp & 0x0f;              
 111   4                    switch(temp) 
 112   4                      { 
 113   5                        case 0x0e: 
 114   5                          key=11; 
 115   5                          break; 
 116   5                        case 0x0d: 
 117   5                          key=10; 
C51 COMPILER V7.06   4X4KEYBOARD                                                           09/25/2008 12:56:47 PAGE 3   

 118   5                          break; 
 119   5                        case 0x0b: 
 120   5                          key=9; 
 121   5                          break; 
 122   5                        case 0x07: 
 123   5                          key=8; 
 124   5                          break; 
 125   5                      } 
 126   4                    temp=P3; 
 127   4           
 128   4                    P0=table[key]; 
 129   4                    temp=temp & 0x0f;              
 130   4                    while(temp!=0x0f) 
 131   4                      { 
 132   5                        temp=P3; 
 133   5                        temp=temp & 0x0f;              
 134   5                      } 
 135   4                  } 
 136   3              } 
 137   2        
 138   2            P3=0xff; 
 139   2            P3_7=0; 
 140   2            temp=P3; 
 141   2            temp=temp & 0x0f; 
 142   2            if (temp!=0x0f) 
 143   2              { 
 144   3                for(i=50;i>0;i--) 
 145   3                for(j=200;j>0;j--); 
 146   3                temp=P3; 
 147   3                temp=temp & 0x0f; 
 148   3                if (temp!=0x0f) 
 149   3                  { 
 150   4                    temp=P3; 
 151   4                    temp=temp & 0x0f;              
 152   4                    switch(temp) 
 153   4                      { 
 154   5                        case 0x0e: 
 155   5                          key=15; 
 156   5                          break; 
 157   5                        case 0x0d: 
 158   5                          key=14; 
 159   5                          break; 
 160   5                        case 0x0b: 
 161   5                          key=13; 
 162   5                          break; 
 163   5                        case 0x07: 
 164   5                          key=12; 
 165   5                          break; 
 166   5                      } 
 167   4                    temp=P3; 
 168   4           
 169   4                    P0=table[key]; 
 170   4                    temp=temp & 0x0f;              
 171   4                    while(temp!=0x0f) 
 172   4                      { 
 173   5                        temp=P3; 
 174   5                        temp=temp & 0x0f;              
 175   5                      } 
 176   4                  } 
 177   3              } 
 178   2          } 
 179   1      } 
C51 COMPILER V7.06   4X4KEYBOARD                                                           09/25/2008 12:56:47 PAGE 4   



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    446    ----
   CONSTANT SIZE    =     16    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      4    ----
   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 + -