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

📄 timechk.lst

📁 个人学习参考!禁止使用到产品上! 任何人不得公开发布!
💻 LST
📖 第 1 页 / 共 3 页
字号:
 213      =1  sbit ClearKey    = P2^0;    //按键轮显             1
 214      =1  
 215      =1  /*  P3  */
 216      =1  sbit XTAL1= P3^1;
 217      =1  sbit XTAL2= P3^0;
 218      =1  
 219      =1  /* TCR20 */
 220      =1  sbit PLLEN = TCR20^7;
 221      =1  sbit HLTRN = TCR20^6;
C51 COMPILER V7.10   TIMECHK                                                               02/03/2005 10:39:01 PAGE 5   

 222      =1  sbit HLTEN = TCR20^5;
 223      =1  sbit ALTCD = TCR20^4;
 224      =1  sbit ALTAB = TCR20^3;
 225      =1  sbit TDIR2 = TCR20^2;
 226      =1  sbit TMOD21= TCR20^1;
 227      =1  sbit TMOD20= TCR20^0;
 228      =1  
 229      =1  #endif
 230      =1  
  20          #include <define.h>
   1      =1  #ifndef _DEFINE_H
   2      =1  #define _DEFINE_H
   3      =1  
   4      =1  //-----***-公共变量(字)-***-----//
   5      =1  extern unsigned char data PowerStA;
   6      =1  extern unsigned char data PowerStB;
   7      =1  extern unsigned char data DataProtectTime;
   8      =1  extern unsigned char data LcdDelay;
   9      =1  extern unsigned char data ComTimeA;
  10      =1  extern unsigned char data ComTimeB;
  11      =1  extern unsigned char data TimeBuf[3];
  12      =1  extern unsigned char data TemperatureTime;
  13      =1  extern unsigned char idata PulseData;
  14      =1  extern unsigned char idata LcdShowTime;
  15      =1  extern unsigned char data IIcByteStar;
  16      =1  extern unsigned char idata MataStData;
  17      =1  extern unsigned char data LcdRunData;
  18      =1  extern unsigned char data KeyTemp;                  //脉冲、键盘缓冲器
  19      =1  extern unsigned char data LcdTime;
  20      =1  extern unsigned char data CkData;
  21      =1  extern unsigned char xdata IIcBuf[16];
  22      =1  extern unsigned char xdata LcdShowBit[2];
  23      =1  extern unsigned char xdata LcdShowBuf[8];
  24      =1  extern unsigned char xdata SumPulseData[4];
  25      =1  extern unsigned char xdata FengPulseData[4];
  26      =1  extern unsigned char xdata GuPulseData[4];
  27      =1  extern unsigned char xdata PingPulseData[4];
  28      =1  extern unsigned char xdata ReversePulseData[4];
  29      =1  extern unsigned char idata ComDataBuf[60];                 //***串口数据接收存放空间***//
  30      =1  //extern unsigned char pdata ReceiveComBuf[60];
  31      =1  //extern unsigned char pdata SendComBuf[60];
  32      =1  extern unsigned char data InfraredBufDptr;              //***红外数据接收指针***//
  33      =1  extern unsigned char data SeriesBufDptr;            //***串口数据接收指针***///
  34      =1  extern unsigned char xdata DaysBuf[4];
  35      =1  extern unsigned char xdata ReverseTime[3];
  36      =1  extern unsigned char data SeriesInData;
  37      =1  //-----***-公共变量(位)-***-----//
  38      =1  
  39      =1  extern bit LcdShowFg;
  40      =1  extern bit LcdTimeFg;
  41      =1  extern bit CmdParseFg;
  42      =1  extern bit BataMoveFg;
  43      =1  extern bit DataProtectFg;
  44      =1  extern bit TemperatureTimeFg;
  45      =1  extern bit LowPowerFg;
  46      =1  extern bit ComFg;
  47      =1  extern bit ReverseFgToData;
  48      =1  extern bit ReverseFgToLcd;
  49      =1  extern bit FengFg;
  50      =1  extern bit PingFg;
  51      =1  extern bit GuFg;
  52      =1  extern bit TimeSendFg;
C51 COMPILER V7.10   TIMECHK                                                               02/03/2005 10:39:01 PAGE 6   

  53      =1  extern bit SeriesSendFg;
  54      =1  extern bit SendOverFg;             //数据发送结束标志
  55      =1  extern bit KeyFg0;                       //清楚数据标志
  56      =1  extern bit KeyFg1;                       //编程数据标志
  57      =1  extern bit KeyFg2;                       //表盖打开标志
  58      =1  extern bit PulseParseFg;
  59      =1  extern bit TimeOk;
  60      =1  extern bit ComBit;
  61      =1  extern bit SeriesBitNine;               //串口第九位
  62      =1  extern bit SeriesOk;
  63      =1  extern bit SeriesSt;
  64      =1  extern bit SeriesFg;//串口占用数据通道标志
  65      =1  extern bit InfraredBitNine;             //红外第九口
  66      =1  extern bit InfraredOk;
  67      =1  extern bit InfraredSt;
  68      =1  extern bit InfraredFg;//红外占用数据通道标志
  69      =1  extern bit ComEn;
  70      =1  //-----***-外部函数的声明-***-----//
  71      =1  
  72      =1  extern void Delay(unsigned int count) reentrant;
  73      =1  extern unsigned char IicByteRead(unsigned char device,unsigned char address);
  74      =1  extern void IicMuchByteRead(unsigned char Device,unsigned char Address,unsigned char DataLend);    
  75      =1  extern void IicByteWrite(unsigned char device,unsigned char address,unsigned char bytedata);
  76      =1  extern void IicMuchByteWrite(unsigned char Device,unsigned char Address,unsigned char DataLend);
  77      =1  extern unsigned char IicReceiveByte(void);
  78      =1  extern bit IicSentByte(unsigned char bytedata);
  79      =1  extern void IicStart(void);
  80      =1  extern void IicStop(void);
  81      =1  extern void IicWait(void);
  82      =1  extern void SendAcknowledge(bit ack);
  83      =1  
  84      =1  extern void LcdStart(void);
  85      =1  extern void LcdStop(void);
  86      =1  extern void LcdSendId(unsigned char ID);
  87      =1  extern void LcdSendAddress(unsigned char Address);
  88      =1  extern void LcdSendByte(unsigned char Data);
  89      =1  extern void LcdSendCommand(unsigned char Command);
  90      =1  
  91      =1  extern void SeriesSend(void);
  92      =1  extern unsigned char HexToBcd(unsigned char Bytedata);
  93      =1  extern unsigned char BcdToHex(unsigned char Bytedata);
  94      =1  extern void DataSave(void);
  95      =1  extern void DataPickup(void);
  96      =1  extern void SeriesSentByte(unsigned char Byte);
  97      =1  
  98      =1  extern void InitCpu(void);
  99      =1  extern void InitLcd(void);
 100      =1  
 101      =1  extern void InitRTC(void);
 102      =1  extern void InitCmd(void);
 103      =1  
 104      =1  extern void Temperature(void);
 105      =1  extern void TimeSpend(void);
 106      =1  extern void CmdParse(void);
 107      =1  extern void PulseParse(void);
 108      =1  extern void KeyParse(void);
 109      =1  extern void KeyCmd(void);
 110      =1  extern void LcdParse(void);
 111      =1  extern void DataProtect(void);
 112      =1  extern void PowerAddUp(void);
 113      =1  extern void ToDay(unsigned char Day);
 114      =1  extern void WDT(void);
C51 COMPILER V7.10   TIMECHK                                                               02/03/2005 10:39:01 PAGE 7   

 115      =1  extern void LowPower(void);
 116      =1  extern void ClerBuf(void);
 117      =1  extern void ClerData(void);
 118      =1  extern void TimeChk(unsigned char ByteDataA,unsigned char ByteDataB);
 119      =1  extern void DataCom(void);
 120      =1  extern void StakeOut(unsigned char DataA,unsigned char DataB);
 121      =1  
 122      =1  #endif
  21          #include <Stdio.h>
   1      =1  /*--------------------------------------------------------------------------
   2      =1  STDIO.H
   3      =1  
   4      =1  Prototypes for standard I/O functions.
   5      =1  Copyright (c) 1988-2001 Keil Elektronik GmbH and Keil Software, Inc.
   6      =1  All rights reserved.
   7      =1  --------------------------------------------------------------------------*/
   8      =1  
   9      =1  #ifndef EOF
  10      =1  #define EOF -1
  11      =1  #endif
  12      =1  
  13      =1  #ifndef NULL
  14      =1   #define NULL ((void *) 0)
  15      =1  #endif
  16      =1  
  17      =1  #ifndef _SIZE_T
  18      =1   #define _SIZE_T
  19      =1   typedef unsigned int size_t;
  20      =1  #endif
  21      =1  
  22      =1  #pragma SAVE
  23      =1  #pragma REGPARMS
  24      =1  extern char _getkey (void);
  25      =1  extern char getchar (void);
  26      =1  extern char ungetchar (char);
  27      =1  extern char putchar (char);
  28      =1  extern int printf   (const char *, ...);
  29      =1  extern int sprintf  (char *, const char *, ...);
  30      =1  extern int vprintf  (const char *, char *);
  31      =1  extern int vsprintf (char *, const char *, char *);
  32      =1  extern char *gets (char *, int n);
  33      =1  extern int scanf (const char *, ...);
  34      =1  extern int sscanf (char *, const char *, ...);
  35      =1  extern int puts (const char *);
  36      =1  
  37      =1  #pragma RESTORE
  22          #include <Intrins.h>
   1      =1  /*--------------------------------------------------------------------------
   2      =1  INTRINS.H
   3      =1  
   4      =1  Intrinsic functions for C51.
   5      =1  Copyright (c) 1988-2001 Keil Elektronik GmbH and Keil Software, Inc.
   6      =1  All rights reserved.
   7      =1  --------------------------------------------------------------------------*/
   8      =1  
   9      =1  extern void          _nop_     (void);
  10      =1  extern bit           _testbit_ (bit);
  11      =1  extern unsigned char _cror_    (unsigned char, unsigned char);
  12      =1  extern unsigned int  _iror_    (unsigned int,  unsigned char);
  13      =1  extern unsigned long _lror_    (unsigned long, unsigned char);
  14      =1  extern unsigned char _crol_    (unsigned char, unsigned char);
  15      =1  extern unsigned int  _irol_    (unsigned int,  unsigned char);
C51 COMPILER V7.10   TIMECHK                                                               02/03/2005 10:39:01 PAGE 8   

  16      =1  extern unsigned long _lrol_    (unsigned long, unsigned char);
  17      =1  extern unsigned char _chkfloat_(float);
  23          void TimeChk(unsigned char ByteDataA,unsigned char ByteDataB)
  24          {
  25   1          unsigned int xdata Time1,Time2;
  26   1          unsigned int xdata Time3,Time4;
  27   1          Time1=0;
  28   1          Time2=0;
  29   1          if(ByteDataA==0x00)
  30   1          {
  31   2              ByteDataA=0x24;
  32   2          }
  33   1          if(TimeBuf[2]==0x00)
  34   1          {
  35   2              TimeBuf[2]=0x24;
  36   2          }
  37   1          Time3=BcdToHex(ByteDataA)*60;
  38   1          Time4=BcdToHex(ByteDataB);
  39   1          Time1=Time3+Time4;
  40   1          Time2=TimeBuf[2]*60+TimeBuf[1];
  41   1          if(Time1>Time2)
  42   1          {
  43   2              if((Time1-Time2)<6)
  44   2              {
  45   3                  TimeOk=1;
  46   3              }
  47   2              else
  48   2              {
  49   3                  TimeOk=0;
  50   3              }
  51   2          }
  52   1          else
  53   1          {
  54   2              if(Time1<Time2)
  55   2              {
  56   3                  if((Time2-Time1)<6)
  57   3                  {
  58   4                      TimeOk=1;
  59   4                  }
  60   3                  else
  61   3                  {
  62   4                      TimeOk=0;
  63   4                  }
  64   3              }

⌨️ 快捷键说明

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