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

📄 main.lst

📁 51单片机下的RTC程序
💻 LST
字号:
C51 COMPILER V7.50   MAIN                                                                  09/09/2006 12:21:30 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN Main.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE Main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /* $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$  Copyright (c)  $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
   2          $                                                                                               肖遥电子(广州)研发中心
   3          $                                                                               Shawyoo Electronics (GuangZhou) R&D Center
   4          $                               http://www.shawyoo.com           Email: autoele@qq.com
   5          $                                                                QQ群:9069471/9069433/9524253          All rights reserved.      
   6          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$  Copyright (c)  $$$$$$$$$$$$$$$$$$$$$$$$$$$ */
   7          /*  
   8                                                文件描述
   9                  文件名:          Main.c
  10                  功能描述:主函数所在文件
  11                  编译环境:通用C编译器
  12                  目标CPU:  LPC2000
  13                  作者:
  14                  创建时间:
  15                  建议编辑环境:UltraEdit 11.00a+  制表符宽度为三个字符,程序可读性更好。
  16          $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  17          */                                        
  18          
  19          #include        "RTC.h"
  20          
  21          /* $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  22                  函数名称:main
  23             功能描述:C语言主函数
  24             入口参数:无
  25             出口参数:无
  26             全局变量: 无
  27             创建时间:
  28             修改时间:
  29          */
  30          void                    TestRTC_Cal(void);
  31          // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 以上原形声明的函数供本函数调用
  32          
  33          int                     main(void)
  34          {
  35   1              
  36   1              while(1)
  37   1              {
  38   2                      
  39   2              }
  40   1      }       // End of function <main>
  41          
  42          
  43          
  44          
  45          
  46          
  47          /* $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  48                  函数名称:TestRTC_Cal
  49             功能描述:测试日期时间和秒的相互运算的函数
  50             入口参数:无
  51             出口参数:无
  52             全局变量: 
  53             创建时间:
  54             修改时间:
  55          
C51 COMPILER V7.50   MAIN                                                                  09/09/2006 12:21:30 PAGE 2   

  56          // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 以上原形声明的函数供本函数调用
  57          void                    TestRTC_Cal(void)
  58          {
  59                  uchar                   i;
  60                  RTC_STR         DateTime,DateTime1;
  61                  pRTC_STR                pRTC,pRTC1;
  62          
  63                  uint32  Loop;
  64                  uint32  tl,tl1;
  65          
  66                  //uint16        t;
  67          
  68                  pRTC    =  (pRTC_STR)(uchar *)&DateTime;
  69                  pRTC1    =  (pRTC_STR)(uchar *)&DateTime1;
  70          
  71                  
  72                  
  73          
  74                  ///////////////////// 从2000年1月1日00:00:01开始
  75                  pRTC->wYear = 2000;
  76                  pRTC->Year = 0;
  77                  pRTC->Month = 1;
  78                  pRTC->Day = 1;
  79                  pRTC->Hour = 0;
  80                  pRTC->Min = 0;
  81                  pRTC->Sec = 1;
  82          
  83          
  84                  for(Loop=2000;Loop<2100;Loop++)
  85                  {       
  86                          tl = DateTimeToSecond(pRTC);
  87          
  88                          i = SecondToDateTime(tl,pRTC1);
  89                          if(i==OK)
  90                          {
  91                                  if((pRTC->wYear==pRTC1->wYear)&&(pRTC->Month==pRTC1->Month)&&   
  92                                           (pRTC->Day==pRTC1->Day)&&(pRTC->Hour)==(pRTC1->Hour)&& 
  93                                           (pRTC->Min==pRTC1->Min)&&(pRTC->Sec==pRTC1->Sec)&&(pRTC->Year==pRTC1->Year))
  94                                  {                               
  95                                          pRTC->wYear += 1;
  96                                          pRTC->Year = (pRTC->wYear-START_YEAR);
  97                                          pRTC->Month = 1;
  98                                          pRTC->Day = 1;
  99                                          pRTC->Hour = 0;
 100                                          pRTC->Min = 0;
 101                                          pRTC->Sec = 1;  
 102                                  }
 103                          }
 104                  }
 105          
 106                  tl = 0;
 107                  for(Loop=0;Loop<0xffffffff;Loop++)
 108                  {
 109                          i = SecondToDateTime(tl,pRTC);
 110                          
 111                          tl1 = DateTimeToSecond(pRTC);
 112          
 113                          if(tl==tl1)
 114                          {
 115                                  if(tl>=(7*24*60*60))
 116                                          tl += (7*24*60*60);                             // 加1星期
 117                                  else if(tl>=(1*24*60*60))
C51 COMPILER V7.50   MAIN                                                                  09/09/2006 12:21:30 PAGE 3   

 118                                          tl += (1*24*60*60);                             // 加1天
 119                                  else if(tl>=(1*1*60*60))
 120                                          tl += (1*1*60*60);                              // 加1小时
 121                                  else if(tl>=(1*1*1*60))
 122                                          tl += (1*1*1*60);                                       // 加1分
 123                                  else    
 124                                          tl += 1;//(24*60*60);                   // 加1秒
 125                          }
 126          
 127                  }
 128          }       // End of function <TestRTC_Cal>
 129          
 130                                           */
 131          /*
 132           $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$  End of File $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
 133           */
 134          


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