📄 16x16.lst
字号:
A51 MACRO ASSEMBLER 16X16 04/21/2005 13:02:01 PAGE 1
MACRO ASSEMBLER A51 V8.00
OBJECT MODULE PLACED IN 16x16.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE 16x16.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
0092 1 SCLK_595 EQU P1.2 ;时钟
0091 2 SDATA_595 EQU P1.1 ;数据
0090 3 RCK_595 EQU P1.0 ;锁存
0000 4 H1 BIT 00H
0000 5 ORG 00H
0000 020030 6 LJMP START
0030 7 ORG 0030H
0030 7580FF 8 START: MOV P0,#0FFH
0033 75A0FF 9 MOV P2,#0FFH
0036 7800 10 MOV R0,#0
0038 7900 11 MOV R1,#0 ;表变址
003A 7A08 12 MOV R2,#8 ;数据移位控制变量
003C 7B00 13 MOV R3,#0 ;行控制数
003E 7C10 14 MOV R4,#16 ;控制字的个数
0040 7D32 15 MOV R5,#50 ;一个字显示次数
0042 7EFE 16 MOV R6,#0FEH
0044 D200 17 SETB H1
0046 900168 18 WRITE: MOV DPTR,#TAB
0049 E9 19 WRITE1: MOV A,R1
004A 93 20 MOVC A,@A+DPTR
004B F52A 21 MOV 2AH,A
004D 120140 22 LCALL WR_595
0050 09 23 INC R1
0051 E9 24 MOV A,R1
0052 93 25 MOVC A,@A+DPTR
0053 F52A 26 MOV 2AH,A
0055 120140 27 LCALL WR_595
0058 120137 28 LCALL OUT_595
005B 120111 29 LCALL OUT_8550
005E 7580FF 30 MOV P0,#0FFH
0061 75A0FF 31 MOV P2,#0FFH
0064 09 32 INC R1
0065 B920DE 33 CJNE R1,#32,WRITE
0068 7900 34 MOV R1,#0
006A DDDA 35 DJNZ R5,WRITE
006C 7D32 36 MOV R5,#50
006E 900188 37 WRITE2: MOV DPTR,#TAB+32
0071 E9 38 WRITE22: MOV A,R1
0072 93 39 MOVC A,@A+DPTR
0073 F52A 40 MOV 2AH,A
0075 120140 41 LCALL WR_595
0078 09 42 INC R1
0079 E9 43 MOV A,R1
007A 93 44 MOVC A,@A+DPTR
007B F52A 45 MOV 2AH,A
007D 120140 46 LCALL WR_595
0080 120137 47 LCALL OUT_595
0083 120111 48 LCALL OUT_8550
0086 7580FF 49 MOV P0,#0FFH
0089 75A0FF 50 MOV P2,#0FFH
008C 09 51 INC R1
008D B920DE 52 CJNE R1,#32,WRITE2
0090 7900 53 MOV R1,#0
0092 DDDA 54 DJNZ R5,WRITE2
0094 7D32 55 MOV R5,#50
56
0096 9001A8 57 WRITE3: MOV DPTR,#TAB+64
0099 E9 58 WRITE33: MOV A,R1
A51 MACRO ASSEMBLER 16X16 04/21/2005 13:02:01 PAGE 2
009A 93 59 MOVC A,@A+DPTR
009B F52A 60 MOV 2AH,A
009D 120140 61 LCALL WR_595
00A0 09 62 INC R1
00A1 E9 63 MOV A,R1
00A2 93 64 MOVC A,@A+DPTR
00A3 F52A 65 MOV 2AH,A
00A5 120140 66 LCALL WR_595
00A8 120137 67 LCALL OUT_595
00AB 120111 68 LCALL OUT_8550
00AE 7580FF 69 MOV P0,#0FFH
00B1 75A0FF 70 MOV P2,#0FFH
00B4 09 71 INC R1
00B5 B920DE 72 CJNE R1,#32,WRITE3
00B8 7900 73 MOV R1,#0
00BA DDDA 74 DJNZ R5,WRITE3
00BC 7D32 75 MOV R5,#50
00BE 9001C8 76 WRITE4: MOV DPTR,#TAB+96
00C1 E9 77 WRITE44: MOV A,R1
00C2 93 78 MOVC A,@A+DPTR
00C3 F52A 79 MOV 2AH,A
00C5 120140 80 LCALL WR_595
00C8 09 81 INC R1
00C9 E9 82 MOV A,R1
00CA 93 83 MOVC A,@A+DPTR
00CB F52A 84 MOV 2AH,A
00CD 120140 85 LCALL WR_595
00D0 120137 86 LCALL OUT_595
00D3 120111 87 LCALL OUT_8550
00D6 7580FF 88 MOV P0,#0FFH
00D9 75A0FF 89 MOV P2,#0FFH
00DC 09 90 INC R1
00DD B920DE 91 CJNE R1,#32,WRITE4
00E0 7900 92 MOV R1,#0
00E2 DDDA 93 DJNZ R5,WRITE4
00E4 7D32 94 MOV R5,#50
95
00E6 9001E8 96 WRITE5: MOV DPTR,#TAB+128
00E9 E9 97 WRITE55: MOV A,R1
00EA 93 98 MOVC A,@A+DPTR
00EB F52A 99 MOV 2AH,A
00ED 120140 100 LCALL WR_595
00F0 09 101 INC R1
00F1 E9 102 MOV A,R1
00F2 93 103 MOVC A,@A+DPTR
00F3 F52A 104 MOV 2AH,A
00F5 120140 105 LCALL WR_595
00F8 120137 106 LCALL OUT_595
00FB 120111 107 LCALL OUT_8550
00FE 7580FF 108 MOV P0,#0FFH
0101 75A0FF 109 MOV P2,#0FFH
0104 09 110 INC R1
0105 B920DE 111 CJNE R1,#32,WRITE5
0108 7900 112 MOV R1,#0
010A DDDA 113 DJNZ R5,WRITE5
010C 7D32 114 MOV R5,#50
115
010E 020030 116 LJMP START
117 ;---------------------------------------------------------------
118 ;行输出子程序
119 ;---------------------------------------------------------------
0111 900160 120 OUT_8550: MOV DPTR,#TTAB
0114 200010 121 JB H1,P0KSC
0117 EB 122 P2KSC: MOV A,R3
0118 93 123 P2KSC1: MOVC A,@A+DPTR
0119 F5A0 124 MOV P2,A
A51 MACRO ASSEMBLER 16X16 04/21/2005 13:02:01 PAGE 3
011B 120153 125 LCALL DELAY
011E 0B 126 INC R3
011F BB0814 127 CJNE R3,#8,LOOP
0122 7B00 128 MOV R3,#0
0124 D200 129 SETB H1
0126 22 130 RET
0127 EB 131 P0KSC: MOV A,R3
0128 93 132 P0KSC1: MOVC A,@A+DPTR
0129 F580 133 MOV P0,A
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -