📄 main.lst
字号:
A51 MACRO ASSEMBLER MAIN 12/16/2007 22:43:45 PAGE 1
MACRO ASSEMBLER A51 V7.00a
OBJECT MODULE PLACED IN main.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE main.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
0000 1 org 00h ;开始
0000 759000 2 MOV P1,#00H;开机电压置0
0003 D2B7 3 SETB P3.7
0005 D2B6 4 SETB P3.6
0007 D2B5 5 SETB P3.5
6
0009 7 start:
0009 8 V15:;1.5伏
0009 120205 9 LCALL DELAY2;防按鍵抖动
000C 759003 10 MOV P1,#03H;1.5V数据量
11 ;-----------------------------------
000F 12 B1:
000F C2A6 13 CLR P2.6
0011 C2A7 14 CLR P2.7
0013 120200 15 lcall delay_us
0016 758086 16 MOV P0,#10000110B;显示1和小数点
0019 D2A6 17 SETB P2.6
001B C2A7 18 CLR P2.7
001D 1201F7 19 LCALL delay
20
0020 C2A6 21 CLR P2.6
0022 C2A7 22 CLR P2.7
0024 120200 23 lcall delay_us
0027 7580ED 24 MOV P0,#11101101B;显示5
002A C2A6 25 CLR P2.6
002C D2A7 26 SETB P2.7
002E 1201F7 27 LCALL delay
28
29 ;JNB P3.5,T;关机
30 ;JNB P3.6,V3;减
31 ;JNB P3.7,S1;增
32 ;-------KEY1
0031 33 K_1:
0031 30B502 34 JNB P3.5,key_1;减键
0034 8006 35 jmp K2_1
0036 36 key_1:
0036 120200 37 lcall delay_us
0039 30B518 38 jnb P3.5,T
39
40 ;-------KEY2
003C 41 K2_1:
003C 30B602 42 JNB P3.6,key2_1;减键
003F 8006 43 jmp K3_1
0041 44 key2_1:
0041 120200 45 lcall delay_us
0044 30B613 46 jnb P3.6,V3
47
48 ;-------KEY3
0047 49 K3_1:
0047 30B702 50 JNB P3.7,key3_1;减键
004A 80C3 51 jmp B1
004C 52 key3_1:
004C 120200 53 lcall delay_us
004F 30B705 54 jnb P3.7,S1
55
0052 80BB 56 JMP B1
57 ;-------------------------------------
58
A51 MACRO ASSEMBLER MAIN 12/16/2007 22:43:45 PAGE 2
59
0054 020189 60 T:LJMP V12;因为程序太长,不能直接转移,所以要用长调用命令!
0057 0201C1 61 S1:LJMP STOP;因为程序太长,不能直接转移,所以要用长调用命令!
62
005A 63 V3:;3伏
005A 120205 64 LCALL DELAY2
005D 75901B 65 MOV P1,#1bH;3V数据量
0060 66 B2:
0060 C2A6 67 CLR P2.6
0062 C2A7 68 CLR P2.7
0064 120200 69 lcall delay_us
0067 75803F 70 MOV P0,#00111111B;显示0
006A D2A6 71 SETB P2.6
006C C2A7 72 CLR P2.7
006E 1201F7 73 LCALL delay
74
0071 C2A6 75 CLR P2.6
0073 C2A7 76 CLR P2.7
0075 120200 77 lcall delay_us
0078 75804F 78 MOV P0,#01001111B;显示3
007B C2A6 79 CLR P2.6
007D D2A7 80 SETB P2.7
007F 1201F7 81 LCALL delay
82
83 ;JNB P2.4,S2;检测是否短路,过流。
84 ;JNB P3.5,S2;关机
85 ;JNB P3.6,V15;减
86 ;JNB P3.7,V42;增
0082 87 K_2:
0082 30B502 88 JNB P3.5,key_2;减键
0085 8006 89 jmp K2_2
0087 90 key_2:
0087 120200 91 lcall delay_us
008A 30B5C7 92 jnb P3.5,T
93
94 ;-------KEY2
008D 95 K2_2:
008D 30B602 96 JNB P3.6,key2_2;减键
0090 8006 97 jmp K3_2
0092 98 key2_2:
0092 120200 99 lcall delay_us
0095 30B6C2 100 jnb P3.6,V3
101
102 ;-------KEY3
0098 103 K3_2:
0098 30B702 104 JNB P3.7,key3_2;减键
009B 010F 105 jmp B1
009D 106 key3_2:
009D 120200 107 lcall delay_us
00A0 30B7B4 108 jnb P3.7,S1
00A3 80BB 109 JMP B2
00A5 0201C1 110 S2:LJMP STOP
111
112
00A8 113 V42:;4.2伏
00A8 120205 114 LCALL DELAY2
00AB 75902F 115 MOV P1,#2FH;4.2V数据量
00AE 116 B3:
00AE C2A6 117 CLR P2.6
00B0 C2A7 118 CLR P2.7
00B2 120200 119 lcall delay_us
00B5 7580E6 120 MOV P0,#11100110B;显示4和小数点
00B8 D2A6 121 SETB P2.6
00BA C2A7 122 CLR P2.7
00BC 1201F7 123 LCALL delay
124
A51 MACRO ASSEMBLER MAIN 12/16/2007 22:43:45 PAGE 3
00BF C2A6 125 CLR P2.6
00C1 C2A7 126 CLR P2.7
00C3 120200 127 lcall delay_us
00C6 7580DB 128 MOV P0,#11011011B;显示2
00C9 C2A6 129 CLR P2.6
00CB D2A7 130 SETB P2.7
00CD 1201F7 131 LCALL delay
132
00D0 30A40B 133 JNB P2.4,S3;检测是否短路,过流。
00D3 30B508 134 JNB P3.5,s3;关机
00D6 30B681 135 JNB P3.6,V3;减
00D9 30B705 136 JNB P3.7,V5;增
00DC 80D0 137 JMP B3
00DE 0201C1 138 S3:LJMP STOP
139
140
00E1 141 V5:;5伏
00E1 120205 142 LCALL DELAY2
00E4 75903F 143 MOV P1,#3FH;5V数据量
00E7 144 B4:
00E7 C2A6 145 CLR P2.6
00E9 C2A7 146 CLR P2.7
00EB 120200 147 lcall delay_us
00EE 75803F 148 MOV P0,#00111111B;显示0
00F1 D2A6 149 SETB P2.6
00F3 C2A7 150 CLR P2.7
00F5 1201F7 151 LCALL delay
152
00F8 C2A6 153 CLR P2.6
00FA C2A7 154 CLR P2.7
00FC 120200 155 lcall delay_us
00FF 75806D 156 MOV P0,#01101101B;5
0102 C2A6 157 CLR P2.6
0104 D2A7 158 SETB P2.7
0106 1201F7 159 LCALL delay
160
0109 30A40B 161 JNB P2.4,S4;检测是否短路
010C 30B508 162 JNB P3.5,s4;关机
010F 30B696 163 JNB P3.6,V42;减
0112 30B705 164 JNB P3.7,V6;增
0115 80D0 165 JMP B4
0117 0201C1 166 S4:LJMP STOP
167
168
011A 169 V6:;6伏
011A 120205 170 LCALL DELAY2
011D 75904E 171 MOV P1,#4EH;6V数据量
0120 172 B5:
0120 C2A6 173 CLR P2.6
0122 C2A7 174 CLR P2.7
0124 120200 175 lcall delay_us
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -