📄 timechk.lst
字号:
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 + -