📄 12232f_s.lst
字号:
A51 MACRO ASSEMBLER 12232F_S 09/16/2006 15:21:54 PAGE 1
MACRO ASSEMBLER A51 V7.08a
OBJECT MODULE PLACED IN 12232f_s.OBJ
ASSEMBLER INVOKED BY: D:\Keil\C51\BIN\A51.EXE 12232f_s.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1 ;以下为串口写指令和数据的子程序:
2 ;This program is for 12232-9 串行
3 ; CS--------P2.0
4 ; SID-------P2.1
5 ; CLK---------P2.2
00A0 6 CS EQU P2.0
00A1 7 SID EQU P2.1
00A2 8 CLK EQU P2.2
0000 9 ORG 0000H
0000 0110 10 AJMP START
0010 11 ORG 0010H
0010 12 START:
0010 12012F 13 LCALL SETUP
0013 1201E0 14 LCALL DEF_CHAR
0016 7480 15 MOV A,#80H
0018 12015C 16 LCALL WRITE_COM
001B 7B08 17 MOV R3,#8
001D 18 TEST11:
001D 90026C 19 MOV DPTR,#CGRAM1 ;CGRAM TEST
0020 120250 20 LCALL WRITE_CGRAM
0023 DBF8 21 DJNZ R3,TEST11
0025 7490 22 MOV A,#90H
0027 12015C 23 LCALL WRITE_COM
002A 7B08 24 MOV R3,#8
002C 25 TEST12:
002C 90026C 26 MOV DPTR,#CGRAM1
002F 120250 27 LCALL WRITE_CGRAM
0032 DBF8 28 DJNZ R3,TEST12
0034 1201D7 29 LCALL DELAY
0037 1201D7 30 LCALL DELAY
003A 1201D7 31 LCALL DELAY
003D 1201D7 32 LCALL DELAY
0040 1201D7 33 LCALL DELAY
0043 7480 34 MOV A,#80H
0045 12015C 35 LCALL WRITE_COM
0048 7B08 36 MOV R3,#8
004A 37 TEST21:
004A 90026E 38 MOV DPTR,#CGRAM2
004D 120250 39 LCALL WRITE_CGRAM
0050 DBF8 40 DJNZ R3,TEST21
0052 7490 41 MOV A,#90H
0054 12015C 42 LCALL WRITE_COM
0057 7B08 43 MOV R3,#8
0059 44 TEST22:
0059 90026E 45 MOV DPTR,#CGRAM2
005C 120250 46 LCALL WRITE_CGRAM
005F DBF8 47 DJNZ R3,TEST22
0061 1201D7 48 LCALL DELAY
0064 1201D7 49 LCALL DELAY
0067 1201D7 50 LCALL DELAY
006A 1201D7 51 LCALL DELAY
006D 1201D7 52 LCALL DELAY
0070 7480 53 MOV A,#80H
0072 12015C 54 LCALL WRITE_COM
0075 7B08 55 MOV R3,#8
0077 56 TEST31:
0077 900270 57 MOV DPTR,#CGRAM3
007A 120250 58 LCALL WRITE_CGRAM
A51 MACRO ASSEMBLER 12232F_S 09/16/2006 15:21:54 PAGE 2
007D DBF8 59 DJNZ R3,TEST31
007F 7490 60 MOV A,#90H
0081 12015C 61 LCALL WRITE_COM
0084 7B08 62 MOV R3,#8
0086 63 TEST32:
0086 900270 64 MOV DPTR,#CGRAM3
0089 120250 65 LCALL WRITE_CGRAM
008C DBF8 66 DJNZ R3,TEST32
008E 1201D7 67 LCALL DELAY
0091 1201D7 68 LCALL DELAY
0094 1201D7 69 LCALL DELAY
0097 1201D7 70 LCALL DELAY
009A 1201D7 71 LCALL DELAY
009D 7480 72 MOV A,#80H
009F 12015C 73 LCALL WRITE_COM
00A2 7B08 74 MOV R3,#8
00A4 75 TEST41:
00A4 900272 76 MOV DPTR,#CGRAM4
00A7 120250 77 LCALL WRITE_CGRAM
00AA DBF8 78 DJNZ R3,TEST41
00AC 7490 79 MOV A,#90H
00AE 12015C 80 LCALL WRITE_COM
00B1 7B08 81 MOV R3,#8
00B3 82 TEST42:
00B3 900272 83 MOV DPTR,#CGRAM4
00B6 120250 84 LCALL WRITE_CGRAM
00B9 DBF8 85 DJNZ R3,TEST42
00BB 1201D7 86 LCALL DELAY
00BE 1201D7 87 LCALL DELAY
00C1 1201D7 88 LCALL DELAY
00C4 1201D7 89 LCALL DELAY
00C7 1201D7 90 LCALL DELAY
00CA 7480 91 MOV A,#80H ;WORD TEST
00CC 12015C 92 LCALL WRITE_COM
00CF 900274 93 MOV DPTR,#CHINESE
00D2 12023F 94 LCALL WRITE_HZ
00D5 7490 95 MOV A,#90H
00D7 12015C 96 LCALL WRITE_COM
00DA 90025C 97 MOV DPTR,#TABLE1
00DD 120234 98 LCALL WRITE_ASCII
00E0 1201D7 99 LCALL DELAY
00E3 1201D7 100 LCALL DELAY
00E6 1201D7 101 LCALL DELAY
00E9 1201D7 102 LCALL DELAY
00EC 1201D7 103 LCALL DELAY
00EF 1201D7 104 LCALL DELAY
00F2 1201D7 105 LCALL DELAY
00F5 1201D7 106 LCALL DELAY
00F8 1201D7 107 LCALL DELAY
00FB 7480 108 MOV A,#80H
00FD 12015C 109 LCALL WRITE_COM
0100 90025C 110 MOV DPTR,#table1
0103 120234 111 LCALL WRITE_ascii
0106 7490 112 MOV A,#90H
0108 12015C 113 LCALL WRITE_COM
010B 900274 114 MOV DPTR,#chinese
010E 12023F 115 LCALL WRITE_hz
0111 1201D7 116 LCALL DELAY
0114 1201D7 117 LCALL DELAY
0117 1201D7 118 LCALL DELAY
011A 1201D7 119 LCALL DELAY
011D 1201D7 120 LCALL DELAY
0120 1201D7 121 LCALL DELAY
0123 1201D7 122 LCALL DELAY
0126 1201D7 123 LCALL DELAY
0129 1201D7 124 LCALL DELAY
A51 MACRO ASSEMBLER 12232F_S 09/16/2006 15:21:54 PAGE 3
012C 020010 125 AAA: LJMP START
012F 126 SETUP:
012F 1201D7 127 LCALL DELAY
0132 1201D7 128 LCALL DELAY
0135 1201D7 129 LCALL DELAY
0138 7401 130 MOV A,#01H ;CLEAR DISPLAY
013A 12015C 131 LCALL WRITE_COM
013D 7430 132 MOV A,#00110000B ;FUNCTION SETTING
013F 12015C 133 LCALL WRITE_COM
0142 7402 134 MOV A,#00000010B ;DDRAM SET TO '00H'
0144 12015C 135 LCALL WRITE_COM
0147 7404 136 MOV A,#00000100B ;
0149 12015C 137 LCALL WRITE_COM
014C 740C 138 MOV A,#00001100B ;DISPLAY ON
014E 12015C 139 LCALL WRITE_COM
0151 7401 140 MOV A,#00000001B ;CLEARING SCREEN
0153 12015C 141 LCALL WRITE_COM
0156 7480 142 MOV A,#10000000B ;SET DDRAM ADDRESS
0158 12015C 143 LCALL WRITE_COM
015B 22 144 RET
015C 145 WRITE_COM:
015C 1201CE 146 LCALL DELAY1 ;INSTEAD OF CHECKING BF STATE
015F D2A0 147 SETB CS
0161 C0E0 148 PUSH ACC
0163 7808 149 MOV R0,#8
0165 74F8 150 MOV A,#11111000B
0167 151 COMM1:
0167 C3 152 CLR C
0168 33 153 RLC A
0169 92A1 154 MOV SID,C
016B C2A2 155 CLR CLK
016D D2A2 156 SETB CLK
016F D8F6 157 DJNZ R0,COMM1
0171 D0E0 158 POP ACC
0173 FD 159 MOV R5,A
0174 54F0 160 ANL A,#0F0H
0176 7808 161 MOV R0,#8
0178 C3 162 COMM2: CLR C
0179 33 163 RLC A
017A 92A1 164 MOV SID,C
017C C2A2 165 CLR CLK
017E D2A2 166 SETB CLK
0180 D8F6 167 DJNZ R0,COMM2
0182 ED 168 MOV A,R5
0183 C4 169 SWAP A
0184 54F0 170 ANL A,#0F0H
0186 7808 171 MOV R0,#8
0188 C3 172 COMM3: CLR C
0189 33 173 RLC A
018A 92A1 174 MOV SID,C
018C C2A2 175 CLR CLK
018E D2A2 176 SETB CLK
0190 D8F6 177 DJNZ R0,COMM3
0192 C2A0 178 CLR CS
0194 22 179 RET
0195 180 WRITE_DAT:
0195 1201CE 181 LCALL DELAY1
0198 D2A0 182 SETB CS
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -