?? ok.lst
字號:
A51 MACRO ASSEMBLER OK 09/25/2007 08:00:20 PAGE 1
MACRO ASSEMBLER A51 V7.10
OBJECT MODULE PLACED IN OK.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE OK.ASM SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
0030 1 LED1 EQU 30H ;定義變量
0031 2 LED2 EQU 31H
0032 3 LED3 EQU 32H
0033 4 TEMP EQU 33H
5
0000 6 ORG 0000H
0000 802E 7 JMP START
0013 8 ORG 0013H
0013 2101 9 JMP ADINT
0030 10 ORG 0030H
0030 11 START:
0030 907FF8 12 MOV DPTR,#07FF8H ;A/D轉換初始化
0033 D28A 13 SETB IT1
0035 D2AF 14 SETB EA
0037 D2AA 15 SETB EX1
0039 F0 16 MOVX @DPTR,A ;啟動轉換
003A 80FE 17 JMP $
003C 18 MUL21:
003C 7BF4 19 MOV R3,#0F4H
003E 7A01 20 MOV R2,#01H
0040 AF33 21 MOV R7,TEMP
0042 EB 22 MOV A,R3
0043 8FF0 23 MOV B,R7
0045 A4 24 MUL AB
0046 ADF0 25 MOV R5,B
0048 FE 26 MOV R6,A
0049 EA 27 MOV A,R2
004A 8FF0 28 MOV B,R7
004C A4 29 MUL AB
004D 2D 30 ADD A,R5
004E FD 31 MOV R5,A
004F E4 32 CLR A
0050 35F0 33 ADDC A,B
0052 FC 34 MOV R4,A
0053 22 35 RET
36
0054 37 DIV31:
0054 C3 38 CLR C
0055 7FFF 39 MOV R7,#0FFH
0057 EC 40 MOV A,R4
0058 9F 41 SUBB A,R7
0059 4003 42 JC DV30
005B D2D2 43 SETB OV ;商溢出
005D 22 44 RET
005E 7A10 45 DV30: MOV R2,#10H ;求R4R5R6/R7→R5R6
0060 C3 46 DM23: CLR C
0061 EE 47 MOV A,R6
0062 33 48 RLC A
0063 FE 49 MOV R6,A
0064 ED 50 MOV A,R5
0065 33 51 RLC A
0066 FD 52 MOV R5,A
0067 EC 53 MOV A,R4
0068 33 54 RLC A
0069 FC 55 MOV R4,A
006A 92D5 56 MOV F0,C
006C C3 57 CLR C
006D 9F 58 SUBB A,R7
A51 MACRO ASSEMBLER OK 09/25/2007 08:00:20 PAGE 2
006E B0D5 59 ANL C,/F0
0070 4002 60 JC DM24
0072 FC 61 MOV R4,A
0073 0E 62 INC R6
0074 DAEA 63 DM24: DJNZ R2,DM23
0076 EC 64 MOV A,R4 ;四舍五入
0077 2C 65 ADD A,R4
0078 4003 66 JC DM25
007A 9F 67 SUBB A,R7
007B 4005 68 JC DM26
007D 0E 69 DM25: INC R6
007E EE 70 MOV A,R6
007F 7001 71 JNZ DM26
0081 0D 72 INC R5
0082 C2D2 73 DM26: CLR OV
0084 22 74 RET ;商在R5R6中
75
0085 76 BCDC: ;雙字節16進制首狟CD碼
0085 7803 77 MOV R0,#3
0087 7932 78 MOV R1,#32H
0089 79 LOOP:
0089 ED 80 MOV A,R5
008A C4 81 SWAP A
008B 540F 82 ANL A,#0FH ;取R6高四位
008D 75F00A 83 MOV B,#10
0090 84 84 DIV AB
0091 C4 85 SWAP A
0092 CD 86 XCH A,R5
0093 540F 87 ANL A,#0FH
0095 C5F0 88 XCH A,B
0097 C4 89 SWAP A
0098 45F0 90 ORL A,B ;余首鞲咚奈揮隦6低四位拼成字節
009A 75F00A 91 MOV B,#10
009D 84 92 DIV AB
009E 4D 93 ORL A,R5
009F FD 94 MOV R5,A
00A0 E5F0 95 MOV A,B
00A2 C4 96 SWAP A
00A3 F5F0 97 MOV B,A
00A5 EE 98 MOV A,R6
00A6 C4 99 SWAP A
00A7 540F 100 ANL A,#0FH
00A9 45F0 101 ORL A,B
00AB 75F00A 102 MOV B,#10
00AE 84 103 DIV AB
00AF C4 104 SWAP A
00B0 CE 105 XCH A,R6
00B1 540F 106 ANL A,#0FH
00B3 C5F0 107 XCH A,B
00B5 C4 108 SWAP A
00B6 45F0 109 ORL A,B
00B8 75F00A 110 MOV B,#10
00BB 84 111 DIV AB
00BC 4E 112 ORL A,R6
00BD FE 113 MOV R6,A
00BE A7F0 114 MOV @R1,B
00C0 19 115 DEC R1
00C1 D8C6 116 DJNZ R0,LOOP
00C3 22 117 RET
118
00C4 119 DISP:
00C4 900122 120 MOV DPTR,#TABLE2
00C7 E530 121 MOV A,LED1
00C9 93 122 MOVC A,@A+DPTR
00CA F530 123 MOV LED1,A
124
A51 MACRO ASSEMBLER OK 09/25/2007 08:00:20 PAGE 3
00CC 900118 125 MOV DPTR,#TABLE1
00CF E531 126 MOV A,LED2
00D1 93 127 MOVC A,@A+DPTR
00D2 F531 128 MOV LED2,A
129
00D4 900118 130 MOV DPTR,#TABLE1
00D7 E532 131 MOV A,LED3
00D9 93 132 MOVC A,@A+DPTR
00DA F532 133 MOV LED3,A
134
00DC C2A0 135 CLR P2.0
00DE 853090 136 MOV P1,LED1
00E1 11F8 137 CALL DELAY
00E3 D2A0 138 SETB P2.0
00E5 C2A1 139 CLR P2.1
00E7 853190 140 MOV P1,LED2
00EA 11F8 141 CALL DELAY
00EC D2A1 142 SETB P2.1
00EE C2A2 143 CLR P2.2
00F0 853290 144 MOV P1,LED3
00F3 11F8 145 CALL DELAY
00F5 D2A2 146 SETB P2.2
00F7 22 147 RET
148
00F8 149 DELAY: ;延時10ms
00F8 7F14 150 MOV R7,#20
00FA 7EFA 151 DL: MOV R6,#250
00FC DEFE 152 DJNZ R6,$
00FE DFFA 153 DJNZ R7,DL
0100 22 154 RET
0101 155 ADINT: ;中斷服務程序
0101 C0D0 156 PUSH PSW
0103 C0E0 157 PUSH ACC
0105 E0 158 MOVX A,@DPTR
0106 F533 159 MOV TEMP,A
0108 113C 160 CALL MUL21
010A 1154 161 CALL DIV31
010C 1185 162 CALL BCDC
010E 11C4 163 CALL DISP
0110 11F8 164 CALL DELAY
0112 F0 165 MOVX @DPTR,A
0113 D0E0 166 POP ACC
0115 D0D0 167 POP PSW
0117 32 168 RETI
0118 169 TABLE1:
0118 3F065B4F 170 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
011C 666D7D07
0120 7F6F
0122 171 TABLE2:
0122 BF86DBCF 172 DB 0bfH,86H,0dbH,0cfH,0e6H,0edH,0fdH,87H,0ffH,0efH ;帶點的0-9
0126 E6EDFD87
012A FFEF
173
174 END
A51 MACRO ASSEMBLER OK 09/25/2007 08:00:20 PAGE 4
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
ACC. . . . . . . . D ADDR 00E0H A
ADINT. . . . . . . C ADDR 0101H A
B. . . . . . . . . D ADDR 00F0H A
BCDC . . . . . . . C ADDR 0085H A
DELAY. . . . . . . C ADDR 00F8H A
DISP . . . . . . . C ADDR 00C4H A
DIV31. . . . . . . C ADDR 0054H A
DL . . . . . . . . C ADDR 00FAH A
DM23 . . . . . . . C ADDR 0060H A
DM24 . . . . . . . C ADDR 0074H A
DM25 . . . . . . . C ADDR 007DH A
DM26 . . . . . . . C ADDR 0082H A
DV30 . . . . . . . C ADDR 005EH A
EA . . . . . . . . B ADDR 00A8H.7 A
EX1. . . . . . . . B ADDR 00A8H.2 A
F0 . . . . . . . . B ADDR 00D0H.5 A
IT1. . . . . . . . B ADDR 0088H.2 A
LED1 . . . . . . . N NUMB 0030H A
LED2 . . . . . . . N NUMB 0031H A
LED3 . . . . . . . N NUMB 0032H A
LOOP . . . . . . . C ADDR 0089H A
MUL21. . . . . . . C ADDR 003CH A
OV . . . . . . . . B ADDR 00D0H.2 A
P1 . . . . . . . . D ADDR 0090H A
P2 . . . . . . . . D ADDR 00A0H A
PSW. . . . . . . . D ADDR 00D0H A
START. . . . . . . C ADDR 0030H A
TABLE1 . . . . . . C ADDR 0118H A
TABLE2 . . . . . . C ADDR 0122H A
TEMP . . . . . . . N NUMB 0033H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -