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

📄 timeset.lst

📁 51开发板的源程序
💻 LST
字号:
C51 COMPILER V7.06   TIMESET                                                               12/18/2007 11:18:08 PAGE 1   


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

stmt level    source

   1                     
   2          
   3          #include "c51base.h"
   4          
   5          
   6          
   7          /*******************************************
   8          设置时间时显示的界面函数,显示形式如下
   9                  --------------------
  10                  |       时间日期设定    |
  11                  |  日期03年05月11日 |
  12                  |  星期日                       |
  13                  |  时间17:45:48         |
  14                  ---------------------
  15          *******************************************/
  16          static void TimeSetDisplay(uchar *time)
  17          {
  18   1              DisplayStr(0,1,"日期");
  19   1              DisplayStr(6,1,"年");
  20   1              DisplayStr(10,1,"月");
  21   1              DisplayStr(14,1,"日");
  22   1              DisplayStr(0,2,"星期");
  23   1              DisplayStr(0,3,"时间");
  24   1              DisplayStr(6,3,":");
  25   1              DisplayStr(9,3,":");
  26   1              DisplayType(4,1,(time[0]%100)/10+'0');
  27   1              DisplayType(5,1,time[0]%10+'0');
  28   1              DisplayType(8,1,(time[1]%100)/10+'0');
  29   1              DisplayType(9,1,time[1]%10+'0');
  30   1              DisplayType(12,1,(time[2]%100)/10+'0');
  31   1              DisplayType(13,1,time[2]%10+'0');
  32   1              switch(time[3])
  33   1              {
  34   2                      case 0:DisplayStr(4,2,"一");
  35   2                              break;
  36   2                      case 1:DisplayStr(4,2,"二");
  37   2                              break;
  38   2                      case 2:DisplayStr(4,2,"叁");
  39   2                              break;
  40   2                      case 3:DisplayStr(4,2,"四");
  41   2                              break;
  42   2                      case 4:DisplayStr(4,2,"五");
  43   2                              break;
  44   2                      case 5:DisplayStr(4,2,"六");
  45   2                              break;
  46   2                      case 6:DisplayStr(4,2,"日");
  47   2                              break;
  48   2                      default:
  49   2                              break;
  50   2              }
  51   1              DisplayType(4,3,(time[4]%100)/10+'0');
  52   1              DisplayType(5,3,time[4]%10+'0');
  53   1              DisplayType(7,3,(time[5]%100)/10+'0');
  54   1              DisplayType(8,3,time[5]%10+'0');
  55   1              DisplayType(10,3,(time[6]%100)/10+'0');
C51 COMPILER V7.06   TIMESET                                                               12/18/2007 11:18:08 PAGE 2   

  56   1              DisplayType(11,3,time[6]%10+'0');
  57   1      }
  58          
  59          /*******************************************
  60          设置时间函数
  61                  在这个函数里面可以设置时间和日期
  62          *******************************************/
  63          
  64          
  65          static void TsDisplay(uchar i)
  66          {
  67   1              if(i == 0)
  68   1                      DispRow(48,2);
  69   1              else if(i == 1)
  70   1                      DispRow(80,2);
  71   1              else if(i == 2)
  72   1                      DispRow(112,2);
  73   1              else if(i == 3)
  74   1                      DispRow(47,4);
  75   1              else if(i == 4)
  76   1                      DispRow(48,6);
  77   1              else if(i == 5)
  78   1                      DispRow(72,6);
  79   1              else if(i == 6)
  80   1                      DispRow(96,6);
  81   1      }
  82          
  83          
  84          void TimeSetup()
  85          {
  86   1              uchar idata key_value,i=0;
  87   1              uchar idata time[7];
  88   1              CLEAR_SCREEN();
  89   1              GetTime(7,time);
  90   1              while(1)
  91   1              {
  92   2                      DisplayStr(2,0,"时间日期设定");
  93   2                      TimeSetDisplay(time);
  94   2                      TsDisplay(i);
  95   2                      key_value = WaitKey(1000);
  96   2                      if(key_value == 'x' || key_value == 0xff)
  97   2                              return;
  98   2                      if(key_value == 'u')
  99   2                      {
 100   3                              if(i==0 && time[0]<99)
 101   3                                      time[i]++;
 102   3                              else if(i==1 && time[1]<12)
 103   3                                      time[i]++;
 104   3                              else if(i==2 && time[2]<31)
 105   3                                      time[i]++;
 106   3                              else if(i==3 && time[3]<6)
 107   3                                      time[i]++;
 108   3                              else if(i==4 && time[4]<23)
 109   3                                      time[i]++;
 110   3                              else if(i==5 && time[5]<59)
 111   3                                      time[i]++;
 112   3                              else if(i==6 && time[6]<59)
 113   3                                      time[i]++;
 114   3                      }
 115   2                      else if (key_value == 'd')
 116   2                      {
 117   3                              if(i==1 && time[1]>1)
C51 COMPILER V7.06   TIMESET                                                               12/18/2007 11:18:08 PAGE 3   

 118   3                                      time[i]--;
 119   3                              else if(i==2 && time[2]>1)
 120   3                                      time[i]--;
 121   3                              else if((i==0 || i>2) && time[i]>0)
 122   3                                      time[i]--;
 123   3                      }
 124   2                      else if(key_value == 'e')
 125   2                      {
 126   3                              if(i<6)
 127   3                                      i++;
 128   3                              else if(i == 6)
 129   3                              {
 130   4                                      SetTime(7,time);
 131   4                                      break;
 132   4                              }
 133   3                      }
 134   2              }
 135   1              CLEAR_SCREEN();
 136   1              DisplayStr(0,1,"设定成功...");
 137   1              key_value = WaitKey(25);
 138   1      }
 139          
 140          void TimeDisplay()
 141          {
 142   1              uchar idata key_value;
 143   1              uchar idata time[7];
 144   1              CLEAR_SCREEN();
 145   1              GetTime(7,time);
 146   1              while(1)
 147   1              {
 148   2                      DisplayStr(2,0,"时间日期查看");
 149   2                      TimeSetDisplay(time);
 150   2                      key_value = WaitKey(50);
 151   2                      if(key_value == 'x' || key_value == 0xff)
 152   2                              return;
 153   2              }
 154   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1060    ----
   CONSTANT SIZE    =     82    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       4
   IDATA SIZE       =   ----      17
   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 + -