📄 ad.lst
字号:
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 1
MCS-51 Family Cross Assembler A S E M - 5 1 V 1.2
=====================================================
Source File: AD.ASM
Object File: AD.HEX
List File: AD.LST
Line I Addr Code Source
1: N 0030 DBUF0 EQU 30H
2: N 0040 TEMP EQU 40H
3: N B0 DIN BIT 0B0H
4: N B1 CLK BIT 0B1H
5: N 0000 ORG 0000H
6: 0000 78 30 START: MOV R0,#DBUF0 ;显示缓冲器存放0AH,0DH,—,0XH,0XH
7: 0002 76 0A MOV @R0,#0AH ;串行静态显示“AD XX”XX表示0--F
8: 0004 08 INC R0
9: 0005 76 0D MOV @R0,#0DH
10: 0007 08 INC R0
11: 0008 76 10 MOV @R0,#10H
12: 000A 08 INC R0
13: 000B 90 FE F3 MOV DPTR,#0FEF3H ;A/D地址
14: 000E 74 00 MOV A,#0 ;清零
15: 0010 F0 MOVX @DPTR,A ;启动A/D
16: 0011 30 B3 FD JNB P3.3,$ ;等待转换结果
17: 0014 E0 MOVX A,@DPTR ;读入结果
18: 0015 F5 90 MOV P1,A ;转换结果送入发光二极管
19: 0017 F5 F0 MOV B,A ;累加器内容存入B中
20: 0019 C4 SWAP A ;A的内容高四位与低四位交换
21: 001A 54 0F ANL A,#0FH ;A的内容高四位清零
22: 001C D6 XCHD A,@R0 ;A/D转换结果高四位送入DBUF3
23: 001D 08 INC R0
24: 001E E5 F0 MOV A,B ;取出A/D转换后的结果
25: 0020 54 0F ANL A,#0FH ;A的内容高四位清零
26: 0022 D6 XCHD A,@R0 ;结果低位送入DBF4中
27: 0023 11 29 ACALL DISP1 ;串行静态显示“AD XX”
28: 0025 11 5F ACALL DELAY ;延时
29: 0027 01 00 AJMP START
30: 0029 78 30 DISP1: MOV R0,#DBUF0 ;静态显示子程序
31: 002B 79 44 MOV R1,#TEMP+4
32: 002D 7A 05 MOV R2,#5
33: 002F 90 00 4D DP10: MOV DPTR,#SEGTAB ;表头地址
34: 0032 E6 MOV A,@R0
35: 0033 93 MOVC A,@A+DPTR ;取段码
36: 0034 F7 MOV @R1,A ;到TEMP中
37: 0035 08 INC R0
38: 0036 19 DEC R1
39: 0037 DA F6 DJNZ R2,DP10
40: 0039 78 40 MOV R0,#TEMP ;段码地址指针
41: 003B 79 05 MOV R1,#5 ;段码字节数
42: 003D 7A 08 DP12: MOV R2,#8 ;移位次数
43: 003F E6 MOV A,@R0 ;取段码
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 2
Line I Addr Code Source
44: 0040 33 DP13: RLC A ;断码左移
45: 0041 92 B0 MOV DIN,C ;输出一位段码
46: 0043 C2 B1 CLR CLK ;发送一个位移脉冲
47: 0045 D2 B1 SETB CLK
48: 0047 DA F7 DJNZ R2,DP13
49: 0049 08 INC R0
50: 004A D9 F1 DJNZ R1,DP12
51: 004C 22 RET
52: 004D 3F 06 5B 4F SEGTAB: DB 3FH,6,5BH,4FH,66H,6DH
0051 66 6D
53: 0053 7D 07 7F 6F DB 7DH,7,7FH,6FH,77H,7CH
0057 77 7C
54: 0059 58 5E 79 71 DB 58H,5EH,79H,71H,0,40H
005D 00 40
55: 005F 7C AF DELAY: MOV R4,#0AFH
56: 0061 7D FF AA1: MOV R5,#0FFH
57: 0063 00 AA: NOP
58: 0064 00 NOP
59: 0065 00 NOP
60: 0066 DD FB DJNZ R5,AA
61: 0068 DC F7 DJNZ R4,AA1
62: 006A 22 RET
63: END
register banks used: ---
no errors
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 3
L I S T O F S Y M B O L S
=============================
SYMBOL TYPE VALUE LINE
------------------------------------------------------------
AA CODE 0063 57
AA1 CODE 0061 56
AC BIT D6
ACC DATA E0
B DATA F0
CLK BIT B1 4
CY BIT D7
DBUF0 NUMBER 0030 1
DELAY CODE 005F 55
DIN BIT B0 3
DISP1 CODE 0029 30
DP10 CODE 002F 33
DP12 CODE 003D 42
DP13 CODE 0040 44
DPH DATA 83
DPL DATA 82
EA BIT AF
ES BIT AC
ET0 BIT A9
ET1 BIT AB
EX0 BIT A8
EX1 BIT AA
EXTI0 CODE 0003
EXTI1 CODE 0013
F0 BIT D5
IE DATA A8
IE0 BIT 89
IE1 BIT 8B
INT0 BIT B2
INT1 BIT B3
IP DATA B8
IT0 BIT 88
IT1 BIT 8A
OV BIT D2
P BIT D0
P0 DATA 80
P1 DATA 90
P2 DATA A0
P3 DATA B0
PCON DATA 87
PS BIT BC
PSW DATA D0
PT0 BIT B9
PT1 BIT BB
PX0 BIT B8
PX1 BIT BA
RB8 BIT 9A
RD BIT B7
REN BIT 9C
RESET CODE 0000
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 4
SYMBOL TYPE VALUE LINE
------------------------------------------------------------
RI BIT 98
RS0 BIT D3
RS1 BIT D4
RXD BIT B0
SBUF DATA 99
SCON DATA 98
SEGTAB CODE 004D 52
SINT CODE 0023
SM0 BIT 9F
SM1 BIT 9E
SM2 BIT 9D
SP DATA 81
START CODE 0000 6
T0 BIT B4
T1 BIT B5
TB8 BIT 9B
TCON DATA 88
TEMP NUMBER 0040 2
TF0 BIT 8D
TF1 BIT 8F
TH0 DATA 8C
TH1 DATA 8D
TI BIT 99
TIMER0 CODE 000B
TIMER1 CODE 001B
TL0 DATA 8A
TL1 DATA 8B
TMOD DATA 89
TR0 BIT 8C
TR1 BIT 8E
TXD BIT B1
WR BIT B6
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -