📄 test.lst
字号:
A51 MACRO ASSEMBLER TEST 07/22/2008 01:02:53 PAGE 1
MACRO ASSEMBLER A51 V8.00
OBJECT MODULE PLACED IN ..\..\TEST.obj
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE TEST.ASM SET(SMALL) DEBUG OBJECT(..\..\TEST.obj) EP
LOC OBJ LINE SOURCE
00A7 1 LCD_RS EQU P2.7
00A6 2 LCD_RW EQU P2.6
00A5 3 LCD_EN EQU P2.5
4
0000 5 org 0000h
6
0000 0102 7 ajmp main
0002 8 MAIN:
0002 1182 9 CALL DELAY15MS
0004 7438 10 MOV A, #38H
0006 1151 11 CALL WCOM
0008 1179 12 CALL DELAY5MS
000A 7438 13 MOV A, #38H
000C 1151 14 CALL WCOM
000E 1182 15 CALL DELAY15MS
0010 7438 16 MOV A, #38H
0012 115F 17 CALL CHECK_BUSY
0014 7438 18 MOV A, #38H
0016 1151 19 CALL WCOM
0018 115F 20 CALL CHECK_BUSY
001A 7408 21 MOV A, #08H
001C 1151 22 CALL WCOM
001E 115F 23 CALL CHECK_BUSY
0020 7401 24 MOV A, #01H
0022 1151 25 CALL WCOM
0024 115F 26 CALL CHECK_BUSY
0026 7406 27 MOV A, #06H
0028 1151 28 CALL WCOM
002A 115F 29 CALL CHECK_BUSY
002C 740C 30 MOV A, #0CH
002E 1151 31 CALL WCOM
0030 115F 32 CALL CHECK_BUSY
0032 7480 33 AA: MOV A,#80H
0034 1151 34 CALL WCOM
0036 115F 35 CALL CHECK_BUSY
0038 7435 36 MOV A,#35H
003A 1143 37 CALL WDATA
003C 115F 38 CALL CHECK_BUSY
003E 75B00F 39 MOV P3,#0FH
0041 0132 40 AJMP AA
41
42
43
44
0043 45 WDATA:
0043 F590 46 MOV P1, A
0045 D2A7 47 SETB LCD_RS
0047 C2A6 48 CLR LCD_RW
0049 D2A5 49 SETB LCD_EN
004B 118B 50 CALL DELAY1MS
004D C2A5 51 CLR LCD_EN
004F 00 52 NOP
0050 22 53 RET
54
55
0051 56 WCOM:
0051 F590 57 MOV P1, A
0053 C2A7 58 CLR LCD_RS
A51 MACRO ASSEMBLER TEST 07/22/2008 01:02:53 PAGE 2
0055 C2A6 59 CLR LCD_RW
0057 D2A5 60 SETB LCD_EN
0059 118B 61 CALL DELAY1MS
005B C2A5 62 CLR LCD_EN
005D 00 63 NOP
005E 22 64 RET
65
66
67
005F 68 CHECK_BUSY:
005F 22 69 RET
0060 C0E0 70 PUSH ACC
0062 7590FF 71 MOV P1, #0FFH
0065 C2A7 72 CLR LCD_RS
0067 D2A6 73 SETB LCD_RW
0069 D2A5 74 SETB LCD_EN
006B 00 75 NOP
006C 76 WAIT1:
006C E590 77 MOV A, P1
006E 5480 78 ANL A, #80H
0070 6002 79 JZ WAIT2
0072 80F8 80 JMP WAIT1
0074 81 WAIT2:
0074 C2A5 82 CLR LCD_EN
0076 D0E0 83 POP ACC
0078 22 84 RET
85
86
0079 87 DELAY5MS:
0079 7F0A 88 MOV R7, #10
007B 7EFA 89 LOOP: MOV R6, #250
007D DEFE 90 DJNZ R6, $
007F DFFA 91 DJNZ R7, LOOP
0081 22 92 RET
93
94
0082 95 DELAY15MS:
0082 7F1E 96 MOV R7, #30
0084 7EFA 97 LOOP1: MOV R6, #250
0086 DEFE 98 DJNZ R6, $
0088 DFFA 99 DJNZ R7, LOOP1
008A 22 100 RET
101
008B 102 DELAY1MS:
008B 7F02 103 MOV R7, #2
008D 7EFA 104 LOOP2: MOV R6, #250
008F DEFE 105 DJNZ R6, $
0091 DFFA 106 DJNZ R7, LOOP2
0093 22 107 RET
108 END
A51 MACRO ASSEMBLER TEST 07/22/2008 01:02:53 PAGE 3
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
AA . . . . . . . . C ADDR 0032H A
ACC. . . . . . . . D ADDR 00E0H A
CHECK_BUSY . . . . C ADDR 005FH A
DELAY15MS. . . . . C ADDR 0082H A
DELAY1MS . . . . . C ADDR 008BH A
DELAY5MS . . . . . C ADDR 0079H A
LCD_EN . . . . . . B ADDR 00A0H.5 A
LCD_RS . . . . . . B ADDR 00A0H.7 A
LCD_RW . . . . . . B ADDR 00A0H.6 A
LOOP . . . . . . . C ADDR 007BH A
LOOP1. . . . . . . C ADDR 0084H A
LOOP2. . . . . . . C ADDR 008DH A
MAIN . . . . . . . C ADDR 0002H A
P1 . . . . . . . . D ADDR 0090H A
P2 . . . . . . . . D ADDR 00A0H A
P3 . . . . . . . . D ADDR 00B0H A
WAIT1. . . . . . . C ADDR 006CH A
WAIT2. . . . . . . C ADDR 0074H A
WCOM . . . . . . . C ADDR 0051H A
WDATA. . . . . . . C ADDR 0043H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -