?? s19-1.lst
字號:
A51 MACRO ASSEMBLER S19_1 02/29/2004 11:03:45 PAGE 1
MACRO ASSEMBLER A51 V7.07
OBJECT MODULE PLACED IN .\S19-1.OBJ
ASSEMBLER INVOKED BY: C:\KEIL\C51\BIN\A51.EXE .\S19-1.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1 ;********89C51引腳定義********
00B3 2 RS BIT P3.3
00B4 3 R_W BIT P3.4
00B5 4 E BIT P3.5
0090 5 DB0_DB7 EQU P1
6 ;------計(jì)數(shù)器A緩存單元定義--------
0040 7 A4 EQU 40H
0041 8 A3 EQU 41H
0042 9 A2 EQU 42H
0043 10 A1 EQU 43H
0044 11 A0 EQU 44H
12 ;-----計(jì)數(shù)器B緩存單元定義------
0045 13 B4 EQU 45H
0046 14 B3 EQU 46H
0047 15 B2 EQU 47H
0048 16 B1 EQU 48H
0049 17 B0 EQU 49H
18 ;-----計(jì)數(shù)器C緩存單元定義------
004A 19 C4 EQU 4AH
004B 20 C3 EQU 4BH
004C 21 C2 EQU 4CH
004D 22 C1 EQU 4DH
004E 23 C0 EQU 4EH
24 ;-----計(jì)數(shù)器D緩存單元定義-----
004F 25 D4 EQU 4FH
0050 26 D3 EQU 50H
0051 27 D2 EQU 51H
0052 28 D1 EQU 52H
0053 29 D0 EQU 53H
30 ;------LCD顯示緩存指針------
0054 31 LCD_POINT EQU 54H
32 ;*******程序開始********
0000 33 ORG 0000H
0000 020030 34 LJMP MAIN
000B 35 ORG 000BH
000B 0200D6 36 LJMP TIMER0
37 ;*******主程序*******
0030 38 ORG 0030H
0030 758901 39 MAIN: MOV TMOD,#01H
0033 758A00 40 MOV TL0,#00H
0036 758C00 41 MOV TH0,#00H
0039 D2AF 42 SETB EA
003B D2A9 43 SETB ET0
003D D28C 44 SETB TR0
003F 758160 45 MOV SP,#60H
0042 120221 46 LCALL INITIAL
0045 1200CC 47 LCALL CLN
48 ;*****顯示A:*************
0048 7480 49 AGAIN: MOV A,#10000000B
004A 120248 50 LCALL WRITE_COM
004D 7441 51 MOV A,#41H
004F 120258 52 LCALL WRITE_DATA
0052 7481 53 MOV A,#10000001B
0054 120248 54 LCALL WRITE_COM
0057 743A 55 MOV A,#3AH
0059 120258 56 LCALL WRITE_DATA
57 ;--------- 顯示B:--------------------
005C 7489 58 MOV A,#10001001B
A51 MACRO ASSEMBLER S19_1 02/29/2004 11:03:45 PAGE 2
005E 120248 59 LCALL WRITE_COM
0061 7442 60 MOV A,#42H
0063 120258 61 LCALL WRITE_DATA
0066 748A 62 MOV A,#10001010B
0068 120248 63 LCALL WRITE_COM
006B 743A 64 MOV A,#3AH
006D 120258 65 LCALL WRITE_DATA
66 ;---------- 顯示C:-------------------
0070 74C0 67 MOV A,#11000000B
0072 120248 68 LCALL WRITE_COM
0075 7443 69 MOV A,#43H
0077 120258 70 LCALL WRITE_DATA
007A 74C1 71 MOV A,#11000001B
007C 120248 72 LCALL WRITE_COM
007F 743A 73 MOV A,#3AH
0081 120258 74 LCALL WRITE_DATA
75 ;---------- 顯示D:---------------------
0084 74C9 76 MOV A,#11001001B
0086 120248 77 LCALL WRITE_COM
0089 7444 78 MOV A,#44H
008B 120258 79 LCALL WRITE_DATA
008E 74CA 80 MOV A,#11001010B
0090 120248 81 LCALL WRITE_COM
0093 743A 82 MOV A,#3AH
0095 120258 83 LCALL WRITE_DATA
84 ;*******計(jì)數(shù)程序啟動(dòng)********
0098 755482 85 START: MOV LCD_POINT,#10000010B
009B 7840 86 MOV R0,#A4
009D 1200BB 87 LCALL DISP
00A0 75548B 88 MOV LCD_POINT,#10001011B
00A3 7845 89 MOV R0,#B4
00A5 1200BB 90 LCALL DISP
00A8 7554C2 91 MOV LCD_POINT,#11000010B
00AB 784A 92 MOV R0,#C4
00AD 1200BB 93 LCALL DISP
00B0 7554CB 94 MOV LCD_POINT,#11001011B
00B3 784F 95 MOV R0,#D4
00B5 1200BB 96 LCALL DISP
00B8 020098 97 LJMP START
98 ;*******顯示計(jì)數(shù)值********
00BB 7A05 99 DISP: MOV R2,#05H
00BD E554 100 MOV A,LCD_POINT
00BF 120248 101 LCALL WRITE_COM
00C2 E6 102 LL0: MOV A,@R0
00C3 2430 103 ADD A,#30H
00C5 120258 104 LCALL WRITE_DATA
00C8 08 105 INC R0
00C9 DAF7 106 DJNZ R2,LL0
00CB 22 107 RET
108 ;******清除計(jì)數(shù)緩存(40H~53H)單元*******
00CC 7914 109 CLN: MOV R1,#20
00CE 7840 110 MOV R0,#40H
00D0 E4 111 CLR A
00D1 F6 112 THERE: MOV @R0,A
00D2 08 113 INC R0
00D3 D9FC 114 DJNZ R1,THERE
00D5 22 115 RET
116 ;*******定時(shí)器T0中斷服務(wù)子程序********
00D6 758A00 117 TIMER0: MOV TL0,#00H
00D9 758C00 118 MOV TH0,#00H
00DC C2B7 119 CLR P3.7
00DE D2B6 120 SETB P3.6
00E0 20B009 121 JB P3.0,NEXT1
00E3 12026E 122 LCALL DEL
00E6 20B003 123 JB P3.0,NEXT1
00E9 120158 124 LCALL CONV_B
A51 MACRO ASSEMBLER S19_1 02/29/2004 11:03:45 PAGE 3
00EC 20B109 125 NEXT1: JB P3.1,NEXT2
00EF 12026E 126 LCALL DEL
00F2 20B103 127 JB P3.1, NEXT2
00F5 1201DE 128 LCALL CONV_D
129 ;---------------------------------
00F8 C2B6 130 NEXT2: CLR P3.6
00FA D2B7 131 SETB P3.7
00FC 20B009 132 JB P3.0,NEXT3
00FF 12026E 133 LCALL DEL
0102 20B003 134 JB P3.0,NEXT3
0105 120115 135 LCALL CONV_A
0108 20B109 136 NEXT3: JB P3.1,NEXT4
010B 12026E 137 LCALL DEL
010E 20B103 138 JB P3.1, NEXT4
0111 12019B 139 LCALL CONV_C
0114 32 140 NEXT4: RETI
141 ;*******計(jì)數(shù)器A進(jìn)行計(jì)算********
0115 C0E0 142 CONV_A: PUSH ACC
0117 C0D0 143 PUSH PSW
0119 0544 144 INC A0
011B E544 145 MOV A,A0
011D B40A33 146 CJNE A,#0AH,DONE_A
0120 754400 147 MOV A0,#00H
0123 E543 148 MOV A,A1
0125 2401 149 ADD A,#01H
0127 F543 150 MOV A1,A
0129 B40A27 151 CJNE A,#0AH,DONE_A
012C 754300 152 MOV A1,#00H
012F E542 153 MOV A,A2
0131 2401 154 ADD A,#01H
0133 F542 155 MOV A2,A
0135 B40A1B 156 CJNE A,#0AH,DONE_A
0138 754200 157 MOV A2,#00H
013B E541 158 MOV A,A3
013D 2401 159 ADD A,#01H
013F F541 160 MOV A3,A
0141 B40A0F 161 CJNE A,#0AH,DONE_A
0144 754100 162 MOV A3,#00H
0147 E540 163 MOV A,A4
0149 2401 164 ADD A,#01H
014B F540 165 MOV A4,A
014D B40A03 166 CJNE A,#0AH,DONE_A
0150 754000 167 MOV A4,#00H
0153 D0D0 168 DONE_A: POP PSW
0155 D0E0 169 POP ACC
0157 22 170 RET
171 ;*******計(jì)數(shù)器B進(jìn)行計(jì)算********
0158 C0E0 172 CONV_B: PUSH ACC
015A C0D0 173 PUSH PSW
015C 0549 174 INC B0
015E E549 175 MOV A,B0
0160 B40A33 176 CJNE A,#0AH,DONE_B
0163 754900 177 MOV B0,#00H
0166 E548 178 MOV A,B1
0168 2401 179 ADD A,#01H
016A F548 180 MOV B1,A
016C B40A27 181 CJNE A,#0AH,DONE_B
016F 754800 182 MOV B1,#00H
0172 E547 183 MOV A,B2
0174 2401 184 ADD A,#01H
0176 F547 185 MOV B2,A
0178 B40A1B 186 CJNE A,#0AH,DONE_B
017B 754700 187 MOV B2,#00H
017E E546 188 MOV A,B3
0180 2401 189 ADD A,#01H
0182 F546 190 MOV B3,A
A51 MACRO ASSEMBLER S19_1 02/29/2004 11:03:45 PAGE 4
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -