📄 motorasm.lst
字号:
A51 MACRO ASSEMBLER MOTORASM 09/19/2007 22:00:25 PAGE 1
MACRO ASSEMBLER A51 V7.10
OBJECT MODULE PLACED IN motorasm.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE motorasm.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1
0090 2 RIGHTKEY EQU P1.0
0091 3 LEFTKEY EQU P1.1
0092 4 RSTKEY EQU P1.2
0080 5 ENA_1 EQU P0.0
0081 6 ENB_1 EQU P0.1
0084 7 ENA_2 EQU P0.4
0085 8 ENB_2 EQU P0.5
0082 9 MOTOR1 EQU P0.2
0083 10 MOTOR2 EQU P0.3
0086 11 MOTOR3 EQU P0.6
0087 12 MOTOR4 EQU P0.7
00A0 13 SENSOR1 EQU P2.0
00A1 14 SENSOR2 EQU P2.1
00A2 15 SENSOR3 EQU P2.2
00A3 16 SENSOR4 EQU P2.3
00A4 17 SENSOR5 EQU P2.4
00A5 18 SENSOR6 EQU P2.5
00B0 19 RST EQU P3.0
0003 20 READY_MOTOR1 EQU 20H.3
0004 21 READY_MOTOR2 EQU 20H.4
0005 22 READY_MOTOR3 EQU 20H.5
0001 23 FLAG_RIGHT EQU 20H.1
0002 24 FLAG_LEFT EQU 20H.2
0009 25 FLAG_SENSOR1 EQU 21H.1
000A 26 FLAG_SENSOR2 EQU 21H.2
000B 27 FLAG_SENSOR3 EQU 21H.3
000C 28 FLAG_SENSOR4 EQU 21H.4
000D 29 FLAG_SENSOR5 EQU 21H.5
000E 30 FLAG_SENSOR6 EQU 21H.6
000F 31 FLAG_TIMER0 EQU 21H.7
0006 32 FLAG_ERROR EQU 20H.6
0030 33 RIGHTSENSOR EQU 30H
0031 34 LEFTSENSOR EQU 31H
0032 35 NUM EQU 32H
36
37
0000 38 ORG 0000H
0000 802E 39 SJMP START
000B 40 ORG 000BH
000B 21F3 41 AJMP TIMER0
0030 42 ORG 0030H
0030 43 START:
0030 758000 44 MOV P0,#00H
0033 7590FF 45 MOV P1,#0FFH
0036 75A0FF 46 MOV P2,#0FFH
0039 C201 47 CLR FLAG_RIGHT
003B C202 48 CLR FLAG_LEFT
003D C209 49 CLR FLAG_SENSOR1
003F C20A 50 CLR FLAG_SENSOR2
0041 C20B 51 CLR FLAG_SENSOR3
0043 C20C 52 CLR FLAG_SENSOR4
0045 C20D 53 CLR FLAG_SENSOR5
0047 C20E 54 CLR FLAG_SENSOR6
0049 C20F 55 CLR FLAG_TIMER0
004B C206 56 CLR FLAG_ERROR
004D C203 57 CLR READY_MOTOR1
004F C204 58 CLR READY_MOTOR2
A51 MACRO ASSEMBLER MOTORASM 09/19/2007 22:00:25 PAGE 2
0051 C205 59 CLR READY_MOTOR3
60
61 ; LCALL DELAY3S
62 ; MOV P0,#00H
63
0053 753000 64 MOV RIGHTSENSOR,#00H
0056 753100 65 MOV LEFTSENSOR,#00H
0059 753200 66 MOV NUM,#00H
005C 758901 67 MOV TMOD,#01H
005F 758C3C 68 MOV TH0,#03CH
0062 758AB0 69 MOV TL0,#0B0H
0065 D2AF 70 SETB EA
0067 D2A9 71 SETB ET0
72
73
74
0069 75 J1:
0069 B2B0 76 CPL RST
77
006B 209008 78 JB RIGHTKEY,K1
006E 120222 79 LCALL DELAY
0071 309019 80 JNB RIGHTKEY,J2
0074 80F3 81 SJMP J1
0076 82 K1:
0076 209108 83 JB LEFTKEY,K2
0079 120222 84 LCALL DELAY
007C 309156 85 JNB LEFTKEY,J5
007F 80E8 86 SJMP J1
0081 87 K2:
0081 2092E5 88 JB RSTKEY,J1
0084 120222 89 LCALL DELAY
0087 2092DF 90 JB RSTKEY,J1
008A 020120 91 LJMP J8
92
93
008D 94 J2:
008D D280 95 SETB ENA_1
008F D281 96 SETB ENB_1
0091 D284 97 SETB ENA_2
0093 D282 98 SETB MOTOR1
0095 D283 99 SETB MOTOR2
0097 D286 100 SETB MOTOR3
0099 C206 101 CLR FLAG_ERROR
009B 753000 102 MOV RIGHTSENSOR,#00H
009E C20F 103 CLR FLAG_TIMER0
00A0 B2B0 104 CPL RST
00A2 12022B 105 LCALL DELAY3S
00A5 120155 106 LCALL READ_SENSOR
00A8 2006BE 107 JB FLAG_ERROR,J1
00AB C201 108 CLR FLAG_RIGHT
00AD C202 109 CLR FLAG_LEFT
110 ; CLR FLAG_TIMER0
00AF 12022B 111 LCALL DELAY3S
00B2 C209 112 CLR FLAG_SENSOR1
00B4 C20A 113 CLR FLAG_SENSOR2
00B6 C20B 114 CLR FLAG_SENSOR3
00B8 C20C 115 CLR FLAG_SENSOR4
00BA C20D 116 CLR FLAG_SENSOR5
00BC C20E 117 CLR FLAG_SENSOR6
00BE C282 118 CLR MOTOR1
00C0 C283 119 CLR MOTOR2
00C2 C286 120 CLR MOTOR3
00C4 D280 121 SETB ENA_1
00C6 D281 122 SETB ENB_1
00C8 D284 123 SETB ENA_2
00CA 12022B 124 LCALL DELAY3S
A51 MACRO ASSEMBLER MOTORASM 09/19/2007 22:00:25 PAGE 3
00CD C280 125 CLR ENA_1
00CF C281 126 CLR ENB_1
00D1 C284 127 CLR ENA_2
00D3 8094 128 SJMP J1
129
130
00D5 131 J5:
00D5 D280 132 SETB ENA_1
00D7 D281 133 SETB ENB_1
00D9 D284 134 SETB ENA_2
00DB C282 135 CLR MOTOR1
00DD C283 136 CLR MOTOR2
00DF C286 137 CLR MOTOR3
00E1 C206 138 CLR FLAG_ERROR
00E3 753100 139 MOV LEFTSENSOR,#00H
00E6 C20F 140 CLR FLAG_TIMER0
00E8 B2B0 141 CPL RST
00EA 12022B 142 LCALL DELAY3S
00ED 1201A4 143 LCALL READ_SENSOR1
00F0 300602 144 JNB FLAG_ERROR,M1
00F3 0169 145 AJMP J1
00F5 146 M1:
00F5 C201 147 CLR FLAG_RIGHT
00F7 C202 148 CLR FLAG_LEFT
149 ; CLR FLAG_TIMER0
150
00F9 12022B 151 LCALL DELAY3S
00FC C209 152 CLR FLAG_SENSOR1
00FE C20A 153 CLR FLAG_SENSOR2
0100 C20B 154 CLR FLAG_SENSOR3
0102 C20C 155 CLR FLAG_SENSOR4
0104 C20D 156 CLR FLAG_SENSOR5
0106 C20E 157 CLR FLAG_SENSOR6
0108 D282 158 SETB MOTOR1
010A D283 159 SETB MOTOR2
010C D286 160 SETB MOTOR3
010E D280 161 SETB ENA_1
0110 D281 162 SETB ENB_1
0112 D284 163 SETB ENA_2
0114 12022B 164 LCALL DELAY3S
0117 C280 165 CLR ENA_1
0119 C281 166 CLR ENB_1
011B C284 167 CLR ENA_2
011D 020069 168 LJMP J1
169
170
171
172
173
0120 174 J8:
0120 D280 175 SETB ENA_1
0122 D281 176 SETB ENB_1
0124 D284 177 SETB ENA_2
0126 C282 178 CLR MOTOR1
0128 C283 179 CLR MOTOR2
012A C286 180 CLR MOTOR3
012C 181 L1:
012C B2B0 182 CPL RST
012E 20A004 183 JB SENSOR1,L2
0131 C280 184 CLR ENA_1
0133 D203 185 SETB READY_MOTOR1
186
0135 187 L2:
0135 20A104 188 JB SENSOR2,L3
0138 C281 189 CLR ENB_1
013A D204 190 SETB READY_MOTOR2
A51 MACRO ASSEMBLER MOTORASM 09/19/2007 22:00:25 PAGE 4
013C 191 L3:
013C 20A204 192 JB SENSOR3,L4
013F C284 193 CLR ENA_2
0141 D205 194 SETB READY_MOTOR3
0143 195 L4:
0143 3003E6 196 JNB READY_MOTOR1,L1
0146 3004E3 197 JNB READY_MOTOR2,L1
0149 3005E0 198 JNB READY_MOTOR3,L1
014C C203 199 CLR READY_MOTOR1
014E C204 200 CLR READY_MOTOR2
0150 C205 201 CLR READY_MOTOR3
0152 020069 202 LJMP J1
203
204
0155 205 READ_SENSOR:
0155 206 S0:
0155 200649 207 JB FLAG_ERROR,S9
0158 B2B0 208 CPL RST
015A 200909 209 JB FLAG_SENSOR1,S1
015D 20A006 210 JB SENSOR1,S1
0160 C280 211 CLR ENA_1
0162 D209 212 SETB FLAG_SENSOR1
0164 0530 213 INC RIGHTSENSOR
0166 214 S1:
0166 200A09 215 JB FLAG_SENSOR2,S2
0169 20A106 216 JB SENSOR2,S2
016C C281 217 CLR ENB_1
016E D20A 218 SETB FLAG_SENSOR2
0170 0530 219 INC RIGHTSENSOR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -