📄 key.lst
字号:
50 =1 extern void *memmove (void *s1, void *s2, int n);
51 =1 extern void *memset (void *s, char val, int n);
52 =1 #pragma RESTORE
53 =1
54 =1 #endif
5 #include<IOsetup.h>
1 =1 #ifndef __IOSETUP_H__
2 =1 #define __IOSETUP_H__
C51 COMPILER V7.06 KEY 11/18/2005 22:41:13 PAGE 5
3 =1
4 =1
5 =1 #define uint unsigned int
6 =1 #define uchar unsigned char
7 =1
8 =1
9 =1
10 =1 sbit SW=P3^2; //频率档位切换+按键(1~15HZ)
11 =1 sbit fchange=P3^3; //频率档位切换-按键(1~15HZ)
12 =1 sbit fset=P3^4; //启动运行次数按键
13 =1 sbit setnum=P3^5; //运行次数设定按键
14 =1 sbit fuel=P3^7; //油泵输出
15 =1 sbit enable0=P3^0; //显示第一位
16 =1 sbit enable1=P3^1; //显示第二位
17 =1
18 =1
19 =1 #endif
6
7
8 extern void ShowNum(unsigned char number);
9
10 extern bit keyflag;
11 extern bit keyflag1;
12
13 extern uchar keynet;
14 extern uchar number;
15 extern uint numb;
16 extern uchar keynum;
17 extern uint time;
18 extern uchar ID;
19 extern uint num;
20 extern uint period;
21 extern uchar high;
22 extern uchar tcount,second,minute,hour;
23 extern char i;
24
25 void key(void)
26 {
27 1 if(SW==0&&keyflag==0) //频率增加键
28 1 {
29 2 keyflag=1;fuel=1;
30 2 while(1)
31 2 {
32 3 TR0=0;
33 3 if(SW==1)
34 3 {
35 4 time=0;
36 4 number=0;
37 4 keynet=0;
38 4 keyflag=0;
39 4 keyflag1=1;
40 4 TR0=0;
41 4 break;
42 4 }
43 3 }i++;//if(i>14){i=0;}
44 2 }
45 1 if(fchange==0&&keyflag==0) //频率减小键
46 1 {
47 2 keyflag=1;fuel=1;
48 2 while(1)
49 2 {
50 3 TR0=0;
C51 COMPILER V7.06 KEY 11/18/2005 22:41:13 PAGE 6
51 3 if(fchange==1)
52 3 {
53 4 time=0;
54 4 number=0;
55 4 keynet=0;
56 4 keyflag=0;
57 4 keyflag1=1;
58 4 TR0=0;
59 4 break;
60 4 }
61 3 }i--;if(i<0){i=14;}
62 2 }
63 1 if(fset==0&&keyflag==0) //启动设定工作次数键
64 1 {
65 2 keyflag=1;fuel=1;
66 2 while(1)
67 2 {
68 3 TR0=0;
69 3 if(fset==1)
70 3 {
71 4 time=0;
72 4 number=0;
73 4 keynet=1;
74 4 keyflag=0;
75 4 keyflag1=1;
76 4 TR0=0;
77 4 break;
78 4 }
79 3 }
80 2 }
81 1 }
C51 COMPILER V7.06 KEY 11/18/2005 22:41:13 PAGE 7
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION key (BEGIN)
; SOURCE LINE # 25
; SOURCE LINE # 26
; SOURCE LINE # 27
0000 20B21D JB SW,?C0001
0003 20001A E JB keyflag,?C0001
; SOURCE LINE # 28
; SOURCE LINE # 29
0006 D200 E SETB keyflag
0008 D2B7 SETB fuel
000A ?C0002:
; SOURCE LINE # 30
; SOURCE LINE # 31
; SOURCE LINE # 32
000A C28C CLR TR0
; SOURCE LINE # 33
000C 30B2FB JNB SW,?C0002
; SOURCE LINE # 34
; SOURCE LINE # 35
000F E4 CLR A
0010 F500 E MOV time,A
0012 F500 E MOV time+01H,A
; SOURCE LINE # 36
0014 F500 E MOV number,A
; SOURCE LINE # 37
0016 F500 E MOV keynet,A
; SOURCE LINE # 38
0018 C200 E CLR keyflag
; SOURCE LINE # 39
001A D200 E SETB keyflag1
; SOURCE LINE # 40
001C C28C CLR TR0
; SOURCE LINE # 41
; SOURCE LINE # 42
; SOURCE LINE # 43
001E ?C0003:
001E 0500 E INC i
; SOURCE LINE # 44
0020 ?C0001:
; SOURCE LINE # 45
0020 20B329 JB fchange,?C0005
0023 200026 E JB keyflag,?C0005
; SOURCE LINE # 46
; SOURCE LINE # 47
0026 D200 E SETB keyflag
0028 D2B7 SETB fuel
002A ?C0006:
; SOURCE LINE # 48
; SOURCE LINE # 49
; SOURCE LINE # 50
002A C28C CLR TR0
; SOURCE LINE # 51
002C 30B3FB JNB fchange,?C0006
; SOURCE LINE # 52
; SOURCE LINE # 53
002F E4 CLR A
0030 F500 E MOV time,A
0032 F500 E MOV time+01H,A
; SOURCE LINE # 54
C51 COMPILER V7.06 KEY 11/18/2005 22:41:13 PAGE 8
0034 F500 E MOV number,A
; SOURCE LINE # 55
0036 F500 E MOV keynet,A
; SOURCE LINE # 56
0038 C200 E CLR keyflag
; SOURCE LINE # 57
003A D200 E SETB keyflag1
; SOURCE LINE # 58
003C C28C CLR TR0
; SOURCE LINE # 59
; SOURCE LINE # 60
; SOURCE LINE # 61
003E ?C0007:
003E 1500 E DEC i
0040 C3 CLR C
0041 E500 E MOV A,i
0043 6480 XRL A,#080H
0045 9480 SUBB A,#080H
0047 5003 JNC ?C0005
0049 75000E E MOV i,#0EH
; SOURCE LINE # 62
004C ?C0005:
; SOURCE LINE # 63
004C 20B41C JB fset,?C0014
004F 200019 E JB keyflag,?C0014
; SOURCE LINE # 64
; SOURCE LINE # 65
0052 D200 E SETB keyflag
0054 D2B7 SETB fuel
0056 ?C0011:
; SOURCE LINE # 66
; SOURCE LINE # 67
; SOURCE LINE # 68
0056 C28C CLR TR0
; SOURCE LINE # 69
0058 30B4FB JNB fset,?C0011
; SOURCE LINE # 70
; SOURCE LINE # 71
005B E4 CLR A
005C F500 E MOV time,A
005E F500 E MOV time+01H,A
; SOURCE LINE # 72
0060 F500 E MOV number,A
; SOURCE LINE # 73
0062 750001 E MOV keynet,#01H
; SOURCE LINE # 74
0065 C200 E CLR keyflag
; SOURCE LINE # 75
0067 D200 E SETB keyflag1
; SOURCE LINE # 76
0069 C28C CLR TR0
; SOURCE LINE # 77
; SOURCE LINE # 78
; SOURCE LINE # 79
; SOURCE LINE # 80
; SOURCE LINE # 81
006B ?C0014:
006B 22 RET
; FUNCTION key (END)
C51 COMPILER V7.06 KEY 11/18/2005 22:41:13 PAGE 9
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 108 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -