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

📄 timeprocess.lst

📁 LCD1602.rar
💻 LST
字号:
C51 COMPILER V8.05a   TIMEPROCESS                                                          07/30/2007 16:36:14 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE TIMEPROCESS
OBJECT MODULE PLACED IN TimeProcess.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE sources\TimeProcess.c BROWSE DEBUG OBJECTEXTEND PRINT(.\TimeProcess.lst) OB
                    -JECT(TimeProcess.obj)

line level    source

   1          //*************************************************************************************************
   2          //*                                                                                                                                                                                               *
   3          //*              ********************************计时状态处理子函数******************************                 *
   4          //*                                                                                                                                                                                               *
   5          //*************************************************************************************************
   6          
   7          
   8          extern bit b_CountStart;
   9          extern bit b_CountPause;
  10          extern bit b_ClockStart;
  11          extern bit b_WorkMode;
  12          extern bit b_LCDClean;
  13          extern bit b_KeyShock;
  14          extern unsigned char uc_ReportSymbol;
  15          extern unsigned long ul_Number;
  16          extern unsigned long ul_ClockOppose;
  17          unsigned long ul_TimeTemp;                //暂停状态技计数暂存。
  18          
  19          
  20          void vTime(unsigned char ucKeyCode)
  21          {
  22   1                      switch(ucKeyCode)
  23   1                              {
  24   2      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  25   2      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<当按下“NO/C”时执行>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  26   2      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  27   2                              case 41:
  28   2      //***************************************00 ->10:从停止到开始**************************************** 
  29   2                                      if((b_CountStart|b_CountPause)==0)                              
  30   2                                              {       
  31   3                                              ul_Number=0;                                                            //初始化记时值为0.
  32   3                                              b_CountStart=1;                                                         //重设标志位,改为开始状态;
  33   3                                              b_ClockStart=1;
  34   3                                              
  35   3      //                                      uc_ReportSymbol=6;
  36   3      //                                      b_LCDClean=1;                                                   
  37   3                                              }
  38   2      //***************************************11 ->10:从暂停到开始****************************************
  39   2                                              else if((b_CountStart&b_CountPause)==1)
  40   2                                                      {
  41   3                                                      ul_Number=ul_TimeTemp;                                  //初始化初值为暂存的值。
  42   3                                                      b_CountPause=0;                                                 //重设标志位,改为开始状态。
  43   3                                                      b_ClockStart=1; 
  44   3                                                      
  45   3      //                                              uc_ReportSymbol=6;
  46   3      //                                              b_LCDClean=1;                                                   
  47   3                                                      }
  48   2      //***************************************10 ->00:从开始到停止****************************************
  49   2                                               else if((b_CountStart=1&(!b_CountPause))==1)   
  50   2                                                              {
  51   3                                                              b_CountStart=0;                                                 //重设标志位,改为停止状态。
  52   3                                                              b_ClockStart=0;                                                 //停止计时。
  53   3                                                              ul_Number=0;                                                    //恢复计时前状态。
  54   3      
C51 COMPILER V8.05a   TIMEPROCESS                                                          07/30/2007 16:36:14 PAGE 2   

  55   3                                                      uc_ReportSymbol=7;
  56   3                                                      b_LCDClean=1;   
  57   3                                                              }
  58   2                                      break;
  59   2      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                          
             -                  
  60   2      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<当按下“=”时执行>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  61   2      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  62   2                              case 43: 
  63   2                                      if(b_CountStart==1)                                                             //如果是开始或暂停状态则进行处理,
  64   2                                              {                                                                                       //否则不处理。
  65   3                                              //*******************************10->11:从开始到暂停。****************************
  66   3                                              if(b_CountPause==0)                                                     
  67   3                                                      {                                                                               //保存计时数值。
  68   4                                                      b_CountPause=1;                                                 //如果是开始状态则改为暂停状态。
  69   4                                                      ul_TimeTemp=ul_Number;
  70   4      
  71   4                                                      uc_ReportSymbol=5;                                              //闪烁显示:-PAUSE
  72   4                                                      b_LCDClean=1;
  73   4                                                                                              
  74   4                                                      b_ClockStart=0;                                                 //暂停计时。
  75   4                                                      }
  76   3                                              else
  77   3                                                      {                       //**************************11 ->10:从暂停到开始*****************                                                                                              
  78   4                                                       b_CountPause=0;                                                //如果是暂停状态则改变为进行状态。
  79   4                                                       ul_Number=ul_TimeTemp;                                 //给计时器赋初值为暂停前的值。
  80   4                                                       b_ClockStart=1;
  81   4      
  82   4      //                                              uc_ReportSymbol=6;
  83   4      //                                              b_LCDClean=1;                                           //继续暂停前的计时。
  84   4                                                      }                       //****************************************************************
  85   3                                              }
  86   2                                      else if(b_CountPause==0)           //***************************00:切换到计算器模式*******
  87   2                                                      {
  88   3                                                      b_WorkMode=0;           //如果在停止计时状态按下“=”键便会切换到计算器模式。
  89   3                                                      ul_Number=0;
  90   3                                                      uc_ReportSymbol=4;      //CHAG-0表明从计时器模式切换到计算器模式。
  91   3                                                      b_LCDClean=1;
  92   3                                                      b_KeyShock=1;
  93   3                                                      }
  94   2                                      break;
  95   2      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                          
             -                  
  96   2      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<当按下“+”时执行>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  97   2      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  98   2                                      case 44:
  99   2                                      {
 100   3                                      b_ClockStart=0;                  //停止计时。
 101   3                                      //******************************切换到倒计时模式*******************************
 102   3                                      b_CountStart=0;         
 103   3                                      b_CountPause=1;
 104   3                                      ul_Number=0;
 105   3                                      uc_ReportSymbol=8;
 106   3                                      b_LCDClean=1;
 107   3                                      ul_ClockOppose=0;
 108   3                                      }
 109   2                                      break;
 110   2                              default:break;
 111   2                              }
 112   1      }


C51 COMPILER V8.05a   TIMEPROCESS                                                          07/30/2007 16:36:14 PAGE 3   

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