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

📄 main.lst

📁 LCD12864做的强大模拟电子钟
💻 LST
字号:
C51 COMPILER V8.05a   MAIN                                                                 01/16/2009 09:09:28 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Program Files\keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /***************************************
   2          **模拟时钟程序
   3          
   4          **暂无时间调整功能
   5          
   6          **proteus仿真论坛:http://proteus.5d6d.com
   7          ***************************************/
   8          
   9          #include <reg52.H>
  10          #include<intrins.h>
  11          #include<math.h>
  12          #include"lcd12864.h"
  13          void Delay(uint ms);
  14          void TimeDisp(uchar hour,uchar min,uchar sec);
  15          void TimerInit();
  16          
  17          //时间初始值
  18          uchar hour = 9;
  19          uchar min = 9;
  20          uchar sec = 30;
  21          
  22          
  23          bit refreshflag = 1;//显示刷新标志,每一秒送一次显示数据
  24          void main()
  25          {
  26   1              TimerInit();
  27   1              ClearScreen();
  28   1              BufferPrint12(0,0," 模拟时钟\n制作:\n  潘忠伟\nproteus.\n 5d6d.com");
  29   1              while(1)
  30   1              {
  31   2                      TimeDisp(hour,min,sec);
  32   2                      if(refreshflag)
  33   2                      {
  34   3                              Show();
  35   3                              refreshflag = 0;
  36   3                      }
  37   2              }
  38   1      }
  39          
  40          
  41          void TimerInit()
  42          {
  43   1              EA = 1;
  44   1              ET0 = 1;
  45   1              TMOD = 0x01;
  46   1              TH0 = (65536-50000)/256;
  47   1              TL0 = (65536-50000)%256;
  48   1              TR0 = 1;
  49   1      }
  50          
  51          void Timer0() interrupt 1
  52          {
  53   1              uchar n;
  54   1              TH0 = (65536-49990)/256;//调整初值可使时间更加精确
  55   1              TL0 = (65536-49990)%256;
C51 COMPILER V8.05a   MAIN                                                                 01/16/2009 09:09:28 PAGE 2   

  56   1              n++;
  57   1              if(n == 40)//24Mhz
  58   1              {
  59   2                      n = 0;
  60   2                      sec++;
  61   2                      refreshflag = 1;
  62   2                      if(sec == 60)
  63   2                      {
  64   3                              sec = 0;
  65   3                              min++;
  66   3                              if(min == 60)
  67   3                              {
  68   4                                      min = 0;
  69   4                                      hour++;
  70   4                                      if(hour == 12)
  71   4                                              hour = 0;
  72   4                              }
  73   3                      }
  74   2              }
  75   1      }
  76          
  77          
  78          
  79          /*
  80          void Delay(uint ms)                                     //延时子程序
  81          {       
  82                  uint x,y;
  83                  for(x=ms;x>0;x--)
  84                          for(y=120;y>0;y--);
  85          }*/


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    110    ----
   CONSTANT SIZE    =     44    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      3       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 + -