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

📄 lcd_crc.lst

📁 外部接传感器完成数据采集
💻 LST
📖 第 1 页 / 共 5 页
字号:
  20      =1  	
  21      =1  #define VLT_SCMD          0x01
  22      =1  #define TMP_SCMD          0x02
  23      =1  #define LVL_SCMD          0x03
  24      =1  #define ACC_RAIN_SCMD     0x04
  25      =1  #define REL_RAIN_SCMD     0x05
  26      =1  #define INST_RAIN_SCMD    0x06
  27      =1  #define PERIOD_RAIN_SCMD  0x07
  28      =1  #define JFZ_01_STA_SCMD   0x08
  29      =1  #define JFZ_01_EXT_SCMD   0x09
  30      =1  #define BATT_CAP_SCMD     0x0a
  31      =1  #define SYS_SCMD          0x0b
  32      =1  
  33      =1  
  34      =1  #define  NEED_REC            0
  35      =1  #define  DIS_CURR_RAIN       1
  36      =1  #define  DIS_COLG_VAL        2         
  37      =1  #define  DIS_CURR_LEVL       3
  38      =1  #define  DIS_TIME_LIVE       4    
  39      =1  #define  SET_STAT_LIVE       5
  40      =1  #define  SET_TIME_LIVE       6
  41      =1  #define  SET_BEGIN_TIME      7
  42      =1  #define  SET_END_TIME        8      
  43      =1  #define  FUNC_KEY_LIVE	     9      
  44      =1  #define  OK_KEY_LIVE         10
  45      =1  #define  KEY_INTERMIT        11
  46      =1  #define  WAIT_PAGE_LIVE      12          
  47      =1  #define  UP_PAGE_LIVE        13
  48      =1  #define  DN_PAGE_LIVE        14
  49      =1  #define  CLR_RAIN_CONFIRM    15
  50      =1  #define  NEED_DIS_TIME       16       
  51      =1  #define  STARTUP_WORK        17
  52      =1  #define  IS_IFRM_LINK        18
  53      =1  #define  SET_ALARM_PARAMETER 19
  54      =1  #define REST_ALARM_PARAMETER 20
  55      =1  #define  SET_SADR_LIVE       21
  56      =1  #define  SET_DADR_LIVE       22
  57      =1  #define  ACC_HAVE_TIME       23
  58      =1  #define  ACC_RAIN            24  
  59      =1  #define  REL_RAIN            25
  60      =1  #define  STARTUP_CFG         26 
  61      =1  #define	 POWER_UP	     32
  62      =1   
  63      =1  
  64      =1  #define	 KEY1_VAL	  0x7e            
  65      =1  #define	 KEY2_VAL	  0xbe
  66      =1  #define	 KEY3_VAL	  0xde
  67      =1  #define	 KEY4_VAL	  0xee
  68      =1  #define	 KEY5_VAL	  0x7d
  69      =1  #define  KEY6_VAL	  0xbd
  70      =1  #define	 KEY7_VAL	  0xdd
  71      =1  #define	 KEY8_VAL	  0xed
  72      =1  #define	 KEY9_VAL	  0x7b
  73      =1  #define	 KEY10_VAL	  0xbb
  74      =1  #define	 KEY11_VAL	  0xdb
  75      =1  #define	 KEY12_VAL	  0xeb
C51 COMPILER V5.10,  SN-  LCD_CRC                                                          01/07/08  08:57:41  PAGE 18  

  76      =1  #define	 KEY13_VAL	  0x77
  77      =1  #define	 KEY14_VAL	  0xb7
  78      =1  #define	 KEY15_VAL	  0xd7
  79      =1  #define	 KEY16_VAL	  0xe7
  80      =1  
  81      =1  
  82      =1  #define UA                1     
  83      =1  #define DM                2     
  84      =1  #define UI                3    
  85      =1  #define I                 4   
  86      =1  #define RR                5     
  87      =1  #define RNR               6   
  88      =1  #define REJ               7     
  89      =1  #define FRMR              8    
  90      =1  #define CNET              9     
  91      =1  #define DISC              10
  92      =1  
  93      =1  
  94      =1  #define OK                0
  95      =1  #define SUCCESS           1     
  96      =1  #define	XMIT_INT_ON	  (TI=1)             
  97      =1  #define PPPINITFCS16      0xffff
  98      =1  #define MAX_CONTENT       10028
  99      =1  #define	SECS_PER_MINUTE   60
 100      =1  #define	SECS_PER_HOUR	  3600
 101      =1  #define	SECS_PER_DAY	  86400
 102      =1  
 103      =1  
 104      =1  
 105      =1       
 106      =1  
  12          #include <lcd_ext.h>
   1      =1  extern unsigned char xdata xmit_numC;
   2      =1  extern unsigned char timer_cnt_b,timer_cnt_h;
   3      =1  extern unsigned int  xdata sadrS,dadrS; //源地址 目的地址
   4      =1  
   5      =1  extern struct{	
   6      =1  	unsigned char xmit_cntC;
   7      =1  	unsigned char rec_cntC;
   8      =1  	unsigned char rec_numC;
   9      =1  	unsigned char frm_headC;
  10      =1  	unsigned char rec_overC;
  11      =1  	unsigned char * xmit_bufCP;
  12      =1  	unsigned char * rec_bufCP;
  13      =1  	unsigned char rec_bufCA[256];
  14      =1  	unsigned char xmit_bufCA[256];	
  15      =1  }xdata comS; //串口数据
  16      =1  
  17      =1  extern struct{
  18      =1  	unsigned char cmd;
  19      =1  	unsigned char cmd_mode; 
  20      =1  	unsigned char cmd_flg;
  21      =1  	unsigned int  lenC;
  22      =1  	unsigned char val_cnt; 
  23      =1  	unsigned char sub_flg[5];
  24      =1  	unsigned char sub_cmd[5];
  25      =1  	unsigned char para_num[5];       
  26      =1  }xdata frmS; //实时数据
  27      =1  
  28      =1  /*extern struct{
  29      =1  	unsigned long int lenC;
  30      =1  	unsigned long int cntC;       
C51 COMPILER V5.10,  SN-  LCD_CRC                                                          01/07/08  08:57:41  PAGE 19  

  31      =1  	unsigned long int numC;  
  32      =1  	unsigned char *bufCP;
  33      =1  	unsigned char bufCA[MAX_CONTENT]; 
  34      =1  }xdata note; //10K自记数据*/
  35      =1  
  36      =1  /*extern struct{
  37      =1  	unsigned char cmd;
  38      =1  	unsigned char cmd_flg;
  39      =1  	unsigned char data_type;
  40      =1  	unsigned int  cntC;
  41      =1  	unsigned long int time_seC;
  42      =1  	unsigned long int begin_timeC;
  43      =1  	unsigned long int end_timeC;
  44      =1  	unsigned char *valCP;
  45      =1  	unsigned char valCA[4];
  46      =1  	unsigned char begin_timeCA[12];
  47      =1  	unsigned char end_timeCA[12];
  48      =1  }xdata colg; //综合数据*/ 
  49      =1  
  50      =1  extern struct{
  51      =1  	char numC;             
  52      =1  	unsigned char clmnC;
  53      =1  	unsigned char pageC;   
  54      =1  	unsigned long int totl_seC;
  55      =1  	unsigned char *valCP;
  56      =1  	unsigned char valCA[13];
  57      =1  	unsigned long int currCA[7];
  58      =1  }xdata sys_timeS; //系统时间
  59      =1  
  60      =1  extern struct{	        
  61      =1  	unsigned char clmnC;
  62      =1  	unsigned char cntC;
  63      =1  	unsigned char numC;
  64      =1  	unsigned int  adrC;
  65      =1  	unsigned char *adrCP; 
  66      =1  	unsigned char adrCA[5];
  67      =1  }xdata stat; //站号
  68      =1  
  69      =1  extern struct{
  70      =1  	unsigned char  set_cnt; 
  71      =1  	char  numC;
  72      =1  	unsigned char  clmnC;
  73      =1  	unsigned char  pageC;
  74      =1  	unsigned char  distinction; 
  75      =1  	unsigned char  isonerain; 
  76      =1  	unsigned int   rainCA_cnt;
  77      =1  	unsigned char  set_buf[14];
  78      =1  	unsigned int   parameter[3][4]; 
  79      =1  	float          max_rain[3];
  80      =1  	float          rainCA[289]; 
  81      =1  }xdata alarm; //报警                
  13          unsigned short int chk_crc(unsigned char *p, unsigned long int reallen)
  14          {
  15   1      	unsigned int crc1;
  16   1              crc1 = PPPGetChecksum(p, reallen);
  17   1              return(crc1);
  18   1      }
  19          
  20          /***********************************************************************
  21          crc = (crc << 8) ^ crctab[(crc>>8)^nextbyte()];
  22          
  23          Function : 	PPPfcs16
C51 COMPILER V5.10,  SN-  LCD_CRC                                                          01/07/08  08:57:41  PAGE 20  

  24          Parameters : 	fcs: current fcs
  25          				cp: pointer to PPP data
  26          				len: size of PPP data
  27          Desc : 		Calculate a new fcs given the current fcs and the new data.
  28          ***********************************************************************/
  29          
  30          static const unsigned short fcstab[256] = {
  31          	0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf,
  32          	0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5, 0xe97e, 0xf8f7,
  33          	0x1081, 0x0108, 0x3393, 0x221a, 0x56a5, 0x472c, 0x75b7, 0x643e,
  34          	0x9cc9, 0x8d40, 0xbfdb, 0xae52, 0xdaed, 0xcb64, 0xf9ff, 0xe876,
  35          	0x2102, 0x308b, 0x0210, 0x1399, 0x6726, 0x76af, 0x4434, 0x55bd,
  36          	0xad4a, 0xbcc3, 0x8e58, 0x9fd1, 0xeb6e, 0xfae7, 0xc87c, 0xd9f5,
  37          	0x3183, 0x200a, 0x1291, 0x0318, 0x77a7, 0x662e, 0x54b5, 0x453c,
  38          	0xbdcb, 0xac42, 0x9ed9, 0x8f50, 0xfbef, 0xea66, 0xd8fd, 0xc974,
  39          	0x4204, 0x538d, 0x6116, 0x709f, 0x0420, 0x15a9, 0x2732, 0x36bb,
  40          	0xce4c, 0xdfc5, 0xed5e, 0xfcd7, 0x8868, 0x99e1, 0xab7a, 0xbaf3,
  41          	0x5285, 0x430c, 0x7197, 0x601e, 0x14a1, 0x0528, 0x37b3, 0x263a,
  42          	0xdecd, 0xcf44, 0xfddf, 0xec56, 0x98e9, 0x8960, 0xbbfb, 0xaa72,
  43          	0x6306, 0x728f, 0x4014, 0x519d, 0x2522, 0x34ab, 0x0630, 0x17b9,
  44          	0xef4e, 0xfec7, 0xcc5c, 0xddd5, 0xa96a, 0xb8e3, 0x8a78, 0x9bf1,
  45          	0x7387, 0x620e, 0x5095, 0x411c, 0x35a3, 0x242a, 0x16b1, 0x0738,
  46          	0xffcf, 0xee46, 0xdcdd, 0xcd54, 0xb9eb, 0xa862, 0x9af9, 0x8b70,
  47          	0x8408, 0x9581, 0xa71a, 0xb693, 0xc22c, 0xd3a5, 0xe13e, 0xf0b7,
  48          	0x0840, 0x19c9, 0x2b52, 0x3adb, 0x4e64, 0x5fed, 0x6d76, 0x7cff,
  49          	0x9489, 0x8500, 0xb79b, 0xa612, 0xd2ad, 0xc324, 0xf1bf, 0xe036,
  50          	0x18c1, 0x0948, 0x3bd3, 0x2a5a, 0x5ee5, 0x4f6c, 0x7df7, 0x6c7e,
  51          	0xa50a, 0xb483, 0x8618, 0x9791, 0xe32e, 0xf2a7, 0xc03c, 0xd1b5,
  52          	0x2942, 0x38cb, 0x0a50, 0x1bd9, 0x6f66, 0x7eef, 0x4c74, 0x5dfd,
  53          	0xb58b, 0xa402, 0x9699, 0x8710, 0xf3af, 0xe226, 0xd0bd, 0xc134,
  54          	0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c,
  55          	0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028, 0x91a1, 0xa33a, 0xb2b3,
  56          	0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb,
  57          	0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9, 0x8120, 0xb3bb, 0xa232,
  58          	0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a,
  59          	0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1,
  60          	0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb, 0x0e70, 0x1ff9,
  61          	0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab, 0xa022, 0x92b9, 0x8330,
  62          	0x7bc7, 0x6a4e, 0x58d5, 0x495c, 0x3de3, 0x2c6a, 0x1ef1, 0x0f78
  63          };
  64          
  65          /*
  66           * Big-endian CRC table based on CRC-CCITT (x^16+x^12+x^5+1 = 0x(1)1021)
  67           *
  68           * Big-endian CRC update function is
  69           * crc = (crc << 8) ^ crctab[(crc>>8)^nextbyte()];
  70           */
  71          
  72          unsigned short const crctab[256] = {
  73          /*  0*/	0x0000, 0x1021, 0x2042, 0x3063, 0x4084, 0x50a5, 0x60c6, 0x70e7,
  74          	0x8108, 0x9129, 0xa14a, 0xb16b, 0xc18c, 0xd1ad, 0xe1ce, 0xf1ef,
  75          	0x1231, 0x0210, 0x3273, 0x2252, 0x52b5, 0x4294, 0x72f7, 0x62d6,
  76          	0x9339, 0x8318, 0xb37b, 0xa35a, 0xd3bd, 0xc39c, 0xf3ff, 0xe3de,
  77          /* 32*/	0x2462, 0x3443, 0x0420, 0x1401, 0x64e6, 0x74c7, 0x44a4, 0x5485,
  78          	0xa56a, 0xb54b, 0x8528, 0x9509, 0xe5ee, 0xf5cf, 0xc5ac, 0xd58d,
  79          	0x3653, 0x2672, 0x1611, 0x0630, 0x76d7, 0x66f6, 0x5695, 0x46b4,
  80          	0xb75b, 0xa77a, 0x9719, 0x8738, 0xf7df, 0xe7fe, 0xd79d, 0xc7bc,
  81          /* 64*/	0x48c4, 0x58e5, 0x6886, 0x78a7, 0x0840, 0x1861, 0x2802, 0x3823,
  82          	0xc9cc, 0xd9ed, 0xe98e, 0xf9af, 0x8948, 0x9969, 0xa90a, 0xb92b,
  83          	0x5af5, 0x4ad4, 0x7ab7, 0x6a96, 0x1a71, 0x0a50, 0x3a33, 0x2a12,
  84          	0xdbfd, 0xcbdc, 0xfbbf, 0xeb9e, 0x9b79, 0x8b58, 0xbb3b, 0xab1a,
  85          /* 96*/	0x6ca6, 0x7c87, 0x4ce4, 0x5cc5, 0x2c22, 0x3c03, 0x0c60, 0x1c41,
C51 COMPILER V5.10,  SN-  LCD_CRC                                                          01/07/08  08:57:41  PAGE 21  

  86          	0xedae, 0xfd8f, 0xcdec, 0xddcd, 0xad2a, 0xbd0b, 0x8d68, 0x9d49,
  87          	0x7e97, 0x6eb6, 0x5ed5, 0x4ef4, 0x3e13, 0x2e32, 0x1e51, 0x0e70,
  88          	0xff9f, 0xefbe, 0xdfdd, 0xcffc, 0xbf1b, 0xaf3a, 0x9f59, 0x8f78,
  89          /*128*/	0x9188, 0x81a9, 0xb1ca, 0xa1eb, 0xd10c, 0xc12d, 0xf14e, 0xe16f,
  90          	0x1080, 0x00a1, 0x30c2, 0x20e3, 0x5004, 0x4025, 0x7046, 0x6067,
  91          	0x83b9, 0x9398, 0xa3fb, 0xb3da, 0xc33d, 0xd31c, 0xe37f, 0xf35e,
  92          	0x02b1, 0x1290, 0x22f3, 0x32d2, 0x4235, 0x5214,

⌨️ 快捷键说明

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