📄 ex.lst
字号:
A51 MACRO ASSEMBLER EX 10/02/2008 10:52:40 PAGE 1
MACRO ASSEMBLER A51 V8.00
OBJECT MODULE PLACED IN ex.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE ex.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1
2
3
4
00B6 5 RS BIT P3.6 ;显示屏控制端RS
00B7 6 E BIT P3.7 ;显示屏控制端E
00A0 7 DATE EQU P2
0000 8 ORG 0000H
0000 020050 9 LJMP XIANSHI
0050 10 ORG 0050H
0050 75A0FF 11 XIANSHI:MOV P2,#0FFH
0053 7401 12 MOV A,#01H ;清屏指令
0055 1200FB 13 LCALL ISEND ;调用显示屏写指令子程序
0058 7438 14 MOV A,#38H
005A 1200FB 15 LCALL ISEND
005D 7480 16 MOV A,#80H ;光标移至行首
005F 1200FB 17 LCALL ISEND
0062 740C 18 MOV A,#0CH ;无光标跟随
0064 1200FB 19 LCALL ISEND
0067 7447 20 MOV A,#71 ;以下程序显示字符:GOOD MORNING! HOW ARE YOU?
0069 12010B 21 LCALL DSEND
006C 746F 22 MOV A,#111
006E 12010B 23 LCALL DSEND
0071 746F 24 MOV A,#111
0073 12010B 25 LCALL DSEND
0076 7464 26 MOV A,#100
0078 12010B 27 LCALL DSEND
007B 7420 28 MOV A,#32
007D 12010B 29 LCALL DSEND
0080 746D 30 MOV A,#109
0082 12010B 31 LCALL DSEND
0085 746F 32 MOV A,#111
0087 12010B 33 LCALL DSEND
008A 7472 34 MOV A,#114
008C 12010B 35 LCALL DSEND
008F 746E 36 MOV A,#110
0091 12010B 37 LCALL DSEND
0094 7469 38 MOV A,#105
0096 12010B 39 LCALL DSEND
0099 746E 40 MOV A,#110
009B 12010B 41 LCALL DSEND
009E 7467 42 MOV A,#103
00A0 12010B 43 LCALL DSEND
00A3 7421 44 MOV A,#33
00A5 12010B 45 LCALL DSEND
00A8 7420 46 MOV A,#32
00AA 12010B 47 LCALL DSEND
00AD 7420 48 MOV A,#32
00AF 12010B 49 LCALL DSEND
00B2 7420 50 MOV A,#32
00B4 12010B 51 LCALL DSEND
00B7 74C0 52 MOV A,#0C0H ;显示屏换行指令
00B9 1200FB 53 LCALL ISEND
00BC 7448 54 MOV A,#72
00BE 12010B 55 LCALL DSEND
00C1 746F 56 MOV A,#111
00C3 12010B 57 LCALL DSEND
00C6 7477 58 MOV A,#119
A51 MACRO ASSEMBLER EX 10/02/2008 10:52:40 PAGE 2
00C8 12010B 59 LCALL DSEND
00CB 7420 60 MOV A,#32
00CD 12010B 61 LCALL DSEND
00D0 7461 62 MOV A,#97
00D2 12010B 63 LCALL DSEND
00D5 7472 64 MOV A,#114
00D7 12010B 65 LCALL DSEND
00DA 7465 66 MOV A,#101
00DC 12010B 67 LCALL DSEND
00DF 7420 68 MOV A,#32
00E1 12010B 69 LCALL DSEND
00E4 7479 70 MOV A,#121
00E6 12010B 71 LCALL DSEND
00E9 746F 72 MOV A,#111
00EB 12010B 73 LCALL DSEND
00EE 7475 74 MOV A,#117
00F0 12010B 75 LCALL DSEND
00F3 743F 76 MOV A,#63
00F5 12010B 77 LCALL DSEND
78
00F8 80FE 79 SJMP $ ;程序暂停
00FA 22 80 RET
81 ;;;;;;;;;;;;;;;;;;;;;;;;;;
82 ;;;;;;显示调用子程序;;;;;;
83 ;;;;;;;;;;;;;;;;;;;;;;;;;;
00FB 75A0FF 84 ISEND: MOV DATE,#0FFH ;显示屏写指令子程序
00FE C2B6 85 CLR RS
0100 00 86 NOP
0101 D2B7 87 SETB E
0103 F5A0 88 MOV DATE,A
0105 C2B7 89 CLR E
0107 12011B 90 LCALL YS5MS
010A 22 91 RET
010B 75A0FF 92 DSEND: MOV DATE,#0FFH ;显示屏写字符子程序
010E D2B6 93 SETB RS
0110 00 94 NOP
0111 D2B7 95 SETB E
0113 F5A0 96 MOV DATE,A
0115 C2B7 97 CLR E
0117 120124 98 LCALL YS60US
011A 22 99 RET
100 ;;;;;;;;;;;;;;;;;;;;;;;;;;
101 ;;;;;; 延时子程序 ;;;;;;
102 ;;;;;;;;;;;;;;;;;;;;;;;;;;
011B 7F04 103 YS5MS: MOV R7,#4 ;显示延时 5MS子程序
011D 7EFF 104 DD0: MOV R6,#0FFH
011F DEFE 105 DD1: DJNZ R6,DD1
0121 DFFA 106 DJNZ R7,DD0
0123 22 107 RET
0124 7F1F 108 YS60US: MOV R7,#1FH ;显示延时 6US子程序
0126 DFFE 109 DJNZ R7,$
0128 22 110 RET
0129 7FFF 111 DELAY: MOV R7,#0FFH
012B 7EFF 112 DDC0: MOV R6,#0FFH
012D DEFE 113 DDC1: DJNZ R6,DDC1
012F DFFA 114 DJNZ R7,DDC0
0131 22 115 RET
116 END
A51 MACRO ASSEMBLER EX 10/02/2008 10:52:40 PAGE 3
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
DATE . . . . . . . D ADDR 00A0H A
DD0. . . . . . . . C ADDR 011DH A
DD1. . . . . . . . C ADDR 011FH A
DDC0 . . . . . . . C ADDR 012BH A
DDC1 . . . . . . . C ADDR 012DH A
DELAY. . . . . . . C ADDR 0129H A
DSEND. . . . . . . C ADDR 010BH A
E. . . . . . . . . B ADDR 00B0H.7 A
ISEND. . . . . . . C ADDR 00FBH A
P2 . . . . . . . . D ADDR 00A0H A
P3 . . . . . . . . D ADDR 00B0H A
RS . . . . . . . . B ADDR 00B0H.6 A
XIANSHI. . . . . . C ADDR 0050H A
YS5MS. . . . . . . C ADDR 011BH A
YS60US . . . . . . C ADDR 0124H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -