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

📄 6bit_cymometer.lst

📁 LCD1602.rar
💻 LST
字号:
C51 COMPILER V8.02   6BIT_CYMOMETER                                                        09/29/2007 13:36:17 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE 6BIT_CYMOMETER
OBJECT MODULE PLACED IN 6bit_cymometer.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 6bit_cymometer.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<reg52.h>
   2          #include<math.h>
   3          
   4          
   5          #define uchar unsigned char
   6          #define unit unsigned int
   7          #define ulong unsigned long                //(共阴)
   8          
   9          uchar code dispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; // 定义位选
  10          uchar code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40};//定义段码
  11          
  12          uchar dispbuf[6]={0}; //显示缓冲
  13          uchar dispcount;
  14          uchar T0count;//T0计数
  15          uchar timecount;//时间计数
  16          ulong x;
  17          bit flag;
  18          
  19          void main(void)
  20          {
  21   1              TMOD=0x15;
  22   1              TH0=0;
  23   1              TL0=0;
  24   1              TH1=(65536-4000)/256;
  25   1              TL1=(65536-4000)%256;
  26   1              TR1=1;
  27   1              TR0=1;
  28   1              ET0=1;
  29   1              ET1=1;
  30   1              EA=1;
  31   1              while(1)
  32   1              {
  33   2                      uchar i;
  34   2                      if(flag==1)
  35   2                      {
  36   3                              flag=0;
  37   3                              x=T0count*65536+TH0*256+TL0;
  38   3                              i=0;
  39   3                              while(x/10)
  40   3                              {
  41   4                                      dispbuf[i]=x%10;
  42   4                                      x=x/10;
  43   4                                      i++;
  44   4                              }
  45   3                              dispbuf[i]=x;
  46   3                              timecount=0;
  47   3                              T0count=0;
  48   3                              TH0=0;
  49   3                              TL0=0;
  50   3                              TR0=1;
  51   3                      }
  52   2              }
  53   1      }
  54          void t0(void) interrupt 1 using 1//T0工作在计数状态下,T0的最大计数频率为250KHz
  55          {
C51 COMPILER V8.02   6BIT_CYMOMETER                                                        09/29/2007 13:36:17 PAGE 2   

  56   1          T0count++;
  57   1      }
  58          void t1(void) interrupt 3 using 2
  59          {
  60   1              TH1=(65536-4000)/256;
  61   1              TL1=(65536-4000)%256;
  62   1              timecount++;
  63   1              if(timecount==250)
  64   1              {
  65   2                      TR0=0;
  66   2                      timecount=0;
  67   2                      flag=1;
  68   2              }
  69   1      
  70   1              P2=dispbit[dispcount];
  71   1              P0=dispcode[dispbuf[dispcount]];
  72   1              dispcount++;
  73   1              if(dispcount==8)
  74   1              {
  75   2                      dispcount=0;
  76   2              }
  77   1      } 


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    267    ----
   CONSTANT SIZE    =     20    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     13       1
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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