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

📄 main.lst

📁 湖北水文信息系统水位雨量采集器的C51源代码
💻 LST
字号:
C51 COMPILER V7.50   MAIN                                                                  10/08/2006 08:51:40 PAGE 1   


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

line level    source

   1          #include "process.h"
   2          #include "scan.h"
   3          #include "init.h"
   4          #include "time.h"
   5          #include "string.h"
   6          #include <SM89516A.H>
   7          #include "recframe.h"
   8          #include "cond.h"
   9          #include "i2c.h"
  10          #include "save_rf.h"
  11          
  12          /*********************************************************************
  13          * 函 数 名: main
  14          * 功能描述: 主程序
  15          * 函数说明: 
  16          * 调用函数: Init()
  17          * 全局变量:无 
  18          * 输 入: 无
  19          * 返 回: 无
  20          * 设 计 者:
  21          ***********************************************************************/
  22          void main(void)
  23          {
  24   1              static unsigned char state=0 ; 
  25   1              static char rprf_flg=1,rpwl_flg=1;
  26   1              static char process_flg=1;
  27   1              
  28   1        sys_init();
  29   1        
  30   1              while(1)
  31   1              {
  32   2                      WatchDog();
  33   2                      
  34   2                      switch(state)
  35   2          {
  36   3                      
  37   3                                      case 0 :
  38   3                                                                              if((r_time>=rain_cfg)&&(rain_1min>=500))  //自报雨量
  39   3                                                      {
  40   4                                                                                              r_time=0;               
  41   4                                                                                              Rep_rainfall();         
  42   4                                                                              }
  43   3                                                                              state++;
  44   3                                                                              break;
  45   3                                                                              
  46   3                                      case 1 :                
  47   3                                                                              if((l_time>=level_cfg)&&(level_1min>=550))//自报水位
  48   3                                                                              {
  49   4                                                                                              l_time=0;
  50   4                                                                                              Rep_waterlevel();
  51   4                                                                                              rain_1s=0;
  52   4                                                                              }
  53   3                                                                              state++;
  54   3                                                                              break;
  55   3                                                                              
C51 COMPILER V7.50   MAIN                                                                  10/08/2006 08:51:40 PAGE 2   

  56   3                                      case 2 :                        
  57   3                                                                              if((rain_1s>=50)||(rprf_flg<=0))   //加报雨量处理
  58   3                                                                              {
  59   4                                                                                              rain_1s=0;
  60   4                                                                                              rprf_flg=Rprf_proc();
  61   4      
  62   4                                                                                              if(rprf_flg>0)  water_1s=0;
  63   4                                                                              }
  64   3                                                                              state++;
  65   3                                                                              break;
  66   3                                                                              
  67   3                                      case 3 :        
  68   3                                                                              if((water_1s>=50)||(rpwl_flg<=0))    //加报水位处理
  69   3                                                                              {               
  70   4                                                                                              water_1s=0;
  71   4                                                                                              rpwl_flg=Rpwl_proc();
  72   4                                                                              }
  73   3                                                                              state++;
  74   3                                                                              break;
  75   3                                                                              
  76   3                                      case 4 :        
  77   3                                                                              if(svrf_flg)    //保存5分钟雨量值标志 
  78   3                                                                              {
  79   4                                                                                              svrf_flg=0;
  80   4                                                                                              W_block(WPAGE4,i2c_addr_rainfall,&RainFall_5Min[0][0],rf_dlen*2);       
  81   4                                                                              }
  82   3                                                                              state++;
  83   3                                                                              break;
  84   3                                                                              
  85   3                                      case 5 :        
  86   3                                                                              process_flg=process();  
  87   3                                                                              if(process_flg==0)      state=0;
  88   3                                                                              else
  89   3                                                                              {
  90   4                                                                                              process_1s=0;               
  91   4                                                                                              state++;
  92   4                                                                              }
  93   3                                                                              break;
  94   3                                      
  95   3                                      case 6 :        
  96   3                                                                              if(process_1s>=50)  state=0;
  97   3                                                                              break;
  98   3                                                                                      
  99   3                                      default:
 100   3                                                                              state=0;
 101   3                                                                              break;
 102   3                      }
 103   2              }
 104   1      }
 105          
 106          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    334    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      4    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.

C51 COMPILER V7.50   MAIN                                                                  10/08/2006 08:51:40 PAGE 3   


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

⌨️ 快捷键说明

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