📄 isp.lst
字号:
016C E2 140 movx a,@r0 ;mov eRAM 0x01xx to Acc
016D F9 141 mov r1,a
016E 858321 142 mov BYTE_ADDR_HIGH,dph
0171 858222 143 mov BYTE_ADDR_LOW,dpl
0174 8920 144 mov ONE_DATA,r1
0176 31BD 145 call ISP_Byte_Program
0178 08 146 inc r0
0179 A3 147 inc dptr
017A E583 148 mov a,dph
017C B427ED 149 cjne a,#027h,Byte_program11
150 ;================================================*
151 ; second Byte program,
152 ; read data from expanded RAM 0x0200~0x02ff and
153 ; byte program to address:0x2700~0x27ff,
154 ; the 0x2710 data will change from "10h" to "66h"
155 ;================================================
017F 156 change_data2:
017F 902700 157 mov dptr,#02700h
0182 75B502 158 mov RCON,#02H ;change eRAM to page 2,0x0200~0x02ff
0185 7800 159 mov r0,#00h
0187 160 Byte_program21:
0187 E2 161 movx a,@r0 ;mov eRAM 0x02xx to Acc
0188 F9 162 mov r1,a
0189 858321 163 mov BYTE_ADDR_HIGH,dph
018C 858222 164 mov BYTE_ADDR_LOW,dpl
018F 8920 165 mov ONE_DATA,r1
0191 31BD 166 call ISP_Byte_Program
0193 08 167 inc r0
0194 A3 168 inc dptr
0195 E583 169 mov a,dph
0197 B428ED 170 cjne a,#028h,Byte_program21
019A C2A7 171 clr p2.7
019C 31A4 172 call disable_expand_RAM ;disable expand RAM
019E 80FE 173 jmp $
174 ;========================================================
175 ; Expand RAM enable .
176 ;========================================================
01A0 177 enable_expand_RAM:
01A0 43BF02 178 orl sconf,#02h;// xxxx xx1x
01A3 22 179 ret
180 ;========================================================
181 ; Expand RAM disable .
182 ;========================================================
01A4 183 disable_expand_RAM:
01A4 53BFFD 184 anl sconf,#0FDh;// xxxx xx0x
01A7 22 185 ret
186 ;========================================================
187 ; ISP enable .
188 ;========================================================
01A8 189 ISP_enable:
01A8 C2AF 190 CLR EA
A51 MACRO ASSEMBLER ISP 06/13/2008 14:36:16 PAGE 4
01AA 75F655 191 MOV ISP_DATA,#055H ;// Enable ISP function key sequence 1
01AD 75F6AA 192 MOV ISP_DATA,#0AAH ;// Enable ISP function key sequence 2
01B0 75F655 193 MOV ISP_DATA,#055H ;// Enable ISP function key sequence 3
01B3 43BF04 194 ORL SCONF,#04H ;// Set ISP Enable SFR xxxx x1xx
01B6 22 195 RET
196 ;========================================================
197 ; ISP Disable .
198 ;========================================================
01B7 199 ISP_disable:
01B7 53BFFB 200 ANL SCONF,#0FBH ;// Disable ISP Enable SFR xxxx x0xx
01BA D2AF 201 SETB EA
01BC 22 202 RET
203 ;========================================================
204 ; ISP Byte Program .
205 ;========================================================
01BD 206 ISP_Byte_Program:
01BD 31A8 207 ACALL ISP_enable
01BF 8520F6 208 MOV ISP_DATA,ONE_DATA
01C2 8521F4 209 MOV ISP_ADDRH,BYTE_ADDR_HIGH
01C5 8522F5 210 MOV ISP_ADDRL,BYTE_ADDR_LOW
01C8 75F780 211 MOV ISP_CMD,#ISP_IAP_BYTE_PROGRAM
01CB 31B7 212 ACALL ISP_disable
01CD 22 213 RET
214 ;========================================================
215 ; ISP Byte Read .
216 ;========================================================
01CE 217 ISP_Byte_read:
01CE 8521F4 218 MOV ISP_ADDRH,BYTE_ADDR_HIGH
01D1 8522F5 219 MOV ISP_ADDRL,BYTE_ADDR_LOW
01D4 E4 220 CLR A
01D5 85F483 221 MOV DPH, ISP_ADDRH
01D8 85F582 222 MOV DPL, ISP_ADDRL
01DB 93 223 MOVC A,@A+DPTR
01DC 22 224 RET
225 ;========================================================
226 ; ISP Sector erase .
227 ;========================================================
01DD 228 ISP_Sector_erase:
01DD 31A8 229 ACALL ISP_enable
01DF 8523F4 230 MOV ISP_ADDRH,SECTOR_FIRST_BYTE_ADDR_HIGH
01E2 8524F5 231 MOV ISP_ADDRL,SECTOR_FIRST_BYTE_ADDR_LOW
01E5 75F782 232 MOV ISP_CMD,#ISP_IAP_SECTOR_ERASE
01E8 75F782 233 MOV ISP_CMD,#ISP_IAP_SECTOR_ERASE
01EB 31B7 234 ACALL ISP_disable
01ED 22 235 RET
236 end
A51 MACRO ASSEMBLER ISP 06/13/2008 14:36:16 PAGE 5
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
BYTE_ADDR_HIGH. . . . . . . D ADDR 0021H A
BYTE_ADDR_LOW . . . . . . . D ADDR 0022H A
BYTE_PROGRAM. . . . . . . . C ADDR 010CH A
BYTE_PROGRAM11. . . . . . . C ADDR 016CH A
BYTE_PROGRAM21. . . . . . . C ADDR 0187H A
CHANGE_DATA1. . . . . . . . C ADDR 0164H A
CHANGE_DATA2. . . . . . . . C ADDR 017FH A
DISABLE_EXPAND_RAM. . . . . C ADDR 01A4H A
DPH . . . . . . . . . . . . D ADDR 0083H A
DPL . . . . . . . . . . . . D ADDR 0082H A
EA. . . . . . . . . . . . . B ADDR 00A8H.7 A
ENABLE_EXPAND_RAM . . . . . C ADDR 01A0H A
ISP_ADDRH . . . . . . . . . D ADDR 00F4H A
ISP_ADDRL . . . . . . . . . D ADDR 00F5H A
ISP_BYTE_PROGRAM. . . . . . C ADDR 01BDH A
ISP_BYTE_READ . . . . . . . C ADDR 01CEH A
ISP_CMD . . . . . . . . . . D ADDR 00F7H A
ISP_DATA. . . . . . . . . . D ADDR 00F6H A
ISP_DISABLE . . . . . . . . C ADDR 01B7H A
ISP_ENABLE. . . . . . . . . C ADDR 01A8H A
ISP_IAP_BYTE_PROGRAM. . . . N NUMB 0080H A
ISP_IAP_SECTOR_ERASE. . . . N NUMB 0082H A
ISP_SECTOR_ERASE. . . . . . C ADDR 01DDH A
ONE_DATA. . . . . . . . . . D ADDR 0020H A
P2. . . . . . . . . . . . . D ADDR 00A0H A
PAGE_ERASE1 . . . . . . . . C ADDR 015FH A
PAGE_ERASE_2600 . . . . . . C ADDR 0102H A
RCON. . . . . . . . . . . . D ADDR 00B5H A
READ_DATA . . . . . . . . . C ADDR 011DH A
READ_DATA1. . . . . . . . . C ADDR 0125H A
READ_DATA2. . . . . . . . . C ADDR 0135H A
READ_DATA3. . . . . . . . . C ADDR 013DH A
SCONF . . . . . . . . . . . D ADDR 00BFH A
SECTOR_FIRST_BYTE_ADDR_HIGH D ADDR 0023H A
SECTOR_FIRST_BYTE_ADDR_LOW. D ADDR 0024H A
START . . . . . . . . . . . C ADDR 0100H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -