键盘.lst

来自「内容包含4*4键盘、ADC0808、DAC0832和流水灯」· LST 代码 · 共 99 行

LST
99
字号
C51 COMPILER V8.05a   键盘                                                                 08/04/2007 14:02:41 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE 键盘
OBJECT MODULE PLACED IN 键盘.OBJ
COMPILER INVOKED BY: e:\Keil\C51\BIN\C51.EXE 键盘.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1           #include <AT89X51.h> 
   2           unsigned char a[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,},b[
             -4],c=0x01;
   3           unsigned int jianzhi;
   4           void Delay1ms(unsigned int count)
   5          {
   6   1      unsigned int i,j;
   7   1      for(i=0;i<count;i++)
   8   1      for(j=0;j<120;j++);
   9   1      }
  10           void show(void)
  11          { 
  12   1      unsigned int r;
  13   1       for(r=0;r<4;r++)
  14   1         {
  15   2          P2=(c<<r);
  16   2          P0=b[r];
  17   2          Delay1ms(1);
  18   2          
  19   2              }
  20   1      }
  21          
  22           void key(void)
  23          {
  24   1       unsigned int hengzhi,leizhi=0,n,r=0x01;
  25   1      
  26   1       if(P3_0==0)
  27   1       hengzhi=0;
  28   1       if(P3_1==0)
  29   1       hengzhi=1;
  30   1       if(P3_2==0)
  31   1       hengzhi=2;
  32   1       if(P3_3==0)
  33   1       hengzhi=3;
  34   1       for(n=0;n<4;n++)
  35   1       {
  36   2        P1=~(r<<n);
  37   2       if((P3_0&&P3_1&&P3_2&&P3_3)!=1)
  38   2        leizhi=n;
  39   2       }
  40   1               
  41   1        jianzhi=hengzhi*4+leizhi;
  42   1       
  43   1       }
  44          
  45           void main(void) 
  46          {
  47   1       while(1)
  48   1       {
  49   2       P1=0x00;
  50   2       jianche:
  51   2       while((P3_0&&P3_1&&P3_2&&P3_3)==1)
  52   2       {
  53   3        show();
  54   3       }
C51 COMPILER V8.05a   键盘                                                                 08/04/2007 14:02:41 PAGE 2   

  55   2       Delay1ms(10);
  56   2       if((P3_0&&P3_1&&P3_2&&P3_3)==1)
  57   2       goto jianche;
  58   2        
  59   2        key();
  60   2        P1=0x00;
  61   2        while((P3_0&&P3_1&&P3_2&&P3_3)!=1)
  62   2         {
  63   3         show();
  64   3         }
  65   2        b[3]=b[2];
  66   2        b[2]=b[1];
  67   2        b[1]=b[0];
  68   2        b[0]=a[jianzhi]; 
  69   2        }
  70   1      }
  71          
  72          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    320    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     23       2
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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