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

📄 process.lst

📁 用于GPRS远程电力抄表系统中采集器端的程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.50   PROCESS                                                               07/19/2006 10:05:14 PAGE 1   


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

line level    source

   1          /*****--------------文件信息------------------------------------------------------------------------------
             ---
   2          **文   件   名: process.C
   3          **最后修改日期: 2005-11-10
   4          **描        述: 对串口接收的数据进行处理
   5          **设计者      : jxf
   6          *****************************************************************************************************/
   7          #include "process.h"
   8          #include "proccomm.h"
   9          #include "recframe.h"
  10          #include "ds1302.h"
  11          #include "io.h"
  12          #include "time.h"
  13          #include "hash.h"
  14          /*******************************************************************
  15                               哈希函数               
  16          函数原型: uchar hash(uchar ,uchar ,uchar) 
  17          功  能:       
  18            
  19          *******************************************************************
  20          uchar Hash(uchar *Data,uchar table_len)
  21          {
  22                  register uint hash = 0;
  23                  uint x = 0, i=0;
  24                  for(i = 0; i < 3; i++) 
  25                  {
  26                          hash = (hash << 2) + Data[i]+TH0+TL0;
  27                          if((x = hash & 0xF000) != 0)
  28                          {
  29                                  hash ^= (x >> 8);
  30                                  hash &= ~x;
  31                          }
  32                  }
  33                  return ((hash & 0x7FFF) % table_len) ;
  34          }
  35          */
  36          
  37          
  38          /*******************************************************************
  39                               用户通断电操作函数               
  40          函数原型: void User_contr()
  41          功  能:       
  42            
  43          ********************************************************************/
  44          void User_contr()
  45          {
  46   1              switch(wr_switch)
  47   1              {
  48   2                      case 1:
  49   2                              TimeStart=1;
  50   2                              delay_30ms=0;
  51   2                              LightFlashStart=0;
  52   2                              if(bport07)
  53   2                              {
  54   3                                      if(bwary00)
C51 COMPILER V7.50   PROCESS                                                               07/19/2006 10:05:14 PAGE 2   

  55   3                                      {
  56   4                                              P0=0;
  57   4                                              P2=0;
  58   4                                              P1_2=0;
  59   4                                      }
  60   3                                      else
  61   3                                      {
  62   4                                              P0=0xff;
  63   4                                      P2=0xff;
  64   4                                              P1_2=1;
  65   4                                      }
  66   3                                      P0_0=bwary00;
  67   3                                      P1_2=~bwary00;
  68   3                                      wr_switch++;
  69   3                      
  70   3                              }
  71   2                              else wr_switch++;
  72   2                              break;
  73   2      
  74   2                      case 2:
  75   2                              if(bport06)
  76   2                              {
  77   3                                      if(delay_30ms>20)
  78   3                                      { 
  79   4                                              delay_30ms=0;
  80   4                                              if(bwary01)
  81   4                                              {
  82   5                                                      P0=0;
  83   5                                                      P2=0;
  84   5                                                      P1_2=0;
  85   5                                              }
  86   4                                              else
  87   4                                              {
  88   5                                                      P0=0xff;
  89   5                                              P2=0xff;
  90   5                                                      P1_2=1;
  91   5                                              }
  92   4                                              
  93   4                                              P0_1=bwary01;
  94   4                                              P1_2=~bwary01;
  95   4                                              wr_switch++;
  96   4                                      }
  97   3                              }
  98   2                              else wr_switch++; 
  99   2                              break;
 100   2      
 101   2                      case 3:
 102   2                              if(bport05)
 103   2                              {
 104   3                                      if(delay_30ms>20)
 105   3                                      {       
 106   4                                              delay_30ms=0;
 107   4                                              if(bwary02)
 108   4                                              {
 109   5                                                      P0=0;
 110   5                                                      P2=0;
 111   5                                                      P1_2=0;
 112   5                                              }
 113   4                                              else
 114   4                                              {
 115   5                                                      P0=0xff;
 116   5                                                      P2=0xff;
C51 COMPILER V7.50   PROCESS                                                               07/19/2006 10:05:14 PAGE 3   

 117   5                                                      P1_2=1;
 118   5                                              }
 119   4                                              
 120   4                                              P0_2=bwary02;
 121   4                                              P1_2=~bwary02;
 122   4                                              wr_switch++;
 123   4                                      }
 124   3                              }
 125   2                              else wr_switch++;
 126   2                              break;
 127   2                      case 4:
 128   2                              if(bport04)
 129   2                              {
 130   3                                      if(delay_30ms>20)
 131   3                                      {
 132   4                                              delay_30ms=0;
 133   4                                              if(bwary03)
 134   4                                              {
 135   5                                                      P0=0;
 136   5                                                      P2=0;
 137   5                                                      P1_2=0;
 138   5                                              }
 139   4                                              else
 140   4                                              {
 141   5                                                      P0=0xff;
 142   5                                              P2=0xff;
 143   5                                                      P1_2=1;
 144   5                                              }
 145   4                                              P0_3=bwary03;
 146   4                                              P1_2=~bwary03;
 147   4                                              wr_switch++;
 148   4                                      }
 149   3                              }
 150   2                              else wr_switch++;
 151   2                              break;
 152   2                      case 5:
 153   2                              if(bport03)
 154   2                              {
 155   3                                      if(delay_30ms>20)
 156   3                                      {
 157   4                                              delay_30ms=0;
 158   4                                              if(bwary04)
 159   4                                              {
 160   5                                                      P0=0;
 161   5                                                      P2=0;
 162   5                                                      P1_2=0;
 163   5                                              }
 164   4                                              else
 165   4                                              {
 166   5                                                      P0=0xff;
 167   5                                              P2=0xff;
 168   5                                                      P1_2=1;
 169   5                                              }
 170   4                                              P0_4=bwary04;
 171   4                                              P1_2=~bwary04;
 172   4                                              wr_switch++;
 173   4                                      }
 174   3                              }
 175   2                              else wr_switch++;
 176   2                              break;
 177   2                      case 6:
 178   2                              if(bport02)
C51 COMPILER V7.50   PROCESS                                                               07/19/2006 10:05:14 PAGE 4   

 179   2                              {
 180   3                                      if(delay_30ms>20)
 181   3                                      {
 182   4                                              delay_30ms=0;
 183   4                                              if(bwary05)
 184   4                                              {
 185   5                                                      P0=0;
 186   5                                                      P2=0;
 187   5                                                      P1_2=0;
 188   5                                              }
 189   4                                              else
 190   4                                              {
 191   5                                                      P0=0xff;
 192   5                                              P2=0xff;
 193   5                                                      P1_2=1;
 194   5                                              }
 195   4                                              P0_5=bwary05;
 196   4                                              P1_2=~bwary05;
 197   4                                              wr_switch++;
 198   4                                      }
 199   3                              }
 200   2                              else wr_switch++;
 201   2                              break;
 202   2                      case 7:
 203   2                              if(bport01)
 204   2                              {
 205   3                                      if(delay_30ms>20)
 206   3                                      {
 207   4                                              delay_30ms=0;
 208   4                                              if(bwary06)
 209   4                                              {
 210   5                                                      P0=0;
 211   5                                                      P2=0;
 212   5                                                      P1_2=0;
 213   5                                              }
 214   4                                              else
 215   4                                              {
 216   5                                                      P0=0xff;
 217   5                                              P2=0xff;
 218   5                                                      P1_2=1;
 219   5                                              }
 220   4                                              P0_6=bwary06;
 221   4                                              P1_2=~bwary06;
 222   4                                              wr_switch++;
 223   4                                      }
 224   3                              }
 225   2                              else wr_switch++;
 226   2                              break;
 227   2                      case 8:
 228   2                              if(bport00)
 229   2                              {
 230   3                                      if(delay_30ms>20)
 231   3                                      {
 232   4                                              delay_30ms=0;
 233   4                                              if(bwary07)
 234   4                                              {
 235   5                                                      P0=0;
 236   5                                                      P2=0;
 237   5                                                      P1_2=0;
 238   5                                              }
 239   4                                              else

⌨️ 快捷键说明

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