📄 init_se0111.ls1
字号:
001E 191 ?C0002:
001E 7F00 192 MOV R7,#00H
0020 193 ?C0003:
0020 E4 194 CLR A
0021 D3 195 SETB C
0022 9500 F 196 SUBB A,Hchar?041
0024 5004 197 JNC ?C0004
0026 7E01 198 MOV R6,#01H
0028 8002 199 SJMP ?C0005
002A 200 ?C0004:
002A 7E00 201 MOV R6,#00H
002C 202 ?C0005:
002C EE 203 MOV A,R6
002D 5F 204 ANL A,R7
002E FF 205 MOV R7,A
002F EF 206 MOV A,R7
0030 6008 207 JZ ?C0001
208 ; Hchar+=0x30;
209 ; SOURCE LINE # 16
0032 7430 210 MOV A,#030H
0034 2500 F 211 ADD A,Hchar?041
0036 F500 F 212 MOV Hchar?041,A
0038 8006 213 SJMP ?C0006
003A 214 ?C0001:
215 ; else
216 ; Hchar+=0x37;
217 ; SOURCE LINE # 18
003A 7437 218 MOV A,#037H
003C 2500 F 219 ADD A,Hchar?041
003E F500 F 220 MOV Hchar?041,A
0040 221 ?C0006:
222 ; putchar('\n');putchar(Hchar);
223 ; SOURCE LINE # 19
0040 7F0A 224 MOV R7,#0AH
0042 120000 F 225 LCALL _putchar
0045 AF00 F 226 MOV R7,Hchar?041
0047 120000 F 227 LCALL _putchar
228 ;
229 ; if((0<=Lchar)&(Lchar<=9))
230 ; SOURCE LINE # 21
004A E500 F 231 MOV A,Lchar?042
004C D3 232 SETB C
004D 9409 233 SUBB A,#09H
004F 5004 234 JNC ?C0008
0051 7F01 235 MOV R7,#01H
0053 8002 236 SJMP ?C0009
0055 237 ?C0008:
0055 7F00 238 MOV R7,#00H
0057 239 ?C0009:
0057 E4 240 CLR A
0058 D3 241 SETB C
0059 9500 F 242 SUBB A,Lchar?042
005B 5004 243 JNC ?C0010
005D 7E01 244 MOV R6,#01H
005F 8002 245 SJMP ?C0011
0061 246 ?C0010:
0061 7E00 247 MOV R6,#00H
0063 248 ?C0011:
0063 EE 249 MOV A,R6
0064 5F 250 ANL A,R7
0065 FF 251 MOV R7,A
0066 EF 252 MOV A,R7
0067 6008 253 JZ ?C0007
254 ; Lchar+=0x30;
255 ; SOURCE LINE # 22
A51 MACRO ASSEMBLER INIT_SE0111 01/27/2003 20:49:45 PAGE 5
0069 7430 256 MOV A,#030H
006B 2500 F 257 ADD A,Lchar?042
006D F500 F 258 MOV Lchar?042,A
006F 8006 259 SJMP ?C0012
0071 260 ?C0007:
261 ; else
262 ; Lchar+=0x37;
263 ; SOURCE LINE # 24
0071 7437 264 MOV A,#037H
0073 2500 F 265 ADD A,Lchar?042
0075 F500 F 266 MOV Lchar?042,A
0077 267 ?C0012:
268 ; putchar(Lchar);
269 ; SOURCE LINE # 25
0077 AF00 F 270 MOV R7,Lchar?042
0079 120000 F 271 LCALL _putchar
272 ; }
273 ; SOURCE LINE # 26
007C 274 ?C0013:
007C 22 275 RET
276 ; END OF _hextochar
277
278 ;
279 ; void se0111_reg_wr(unsigned char Haddr,unsigned char Laddr,unsigned char value,unsigned c
har slot){
280
---- 281 RSEG ?PR?_se0111_reg_wr?INIT_SE0111
0000 282 _se0111_reg_wr:
283 USING 0
284 ; SOURCE LINE # 28
0000 8F00 F 285 MOV Haddr?143,R7
0002 8D00 F 286 MOV Laddr?144,R5
0004 8B00 F 287 MOV value?145,R3
288 ; switch(slot){
289 ; SOURCE LINE # 29
0006 E500 F 290 MOV A,slot?146
0008 120000 F 291 LCALL ?C?CCASE
000B 0000 F 292 DW ?C0015
000D 01 293 DB 01H
000E 0000 F 294 DW ?C0016
0010 02 295 DB 02H
0011 0000 F 296 DW ?C0017
0013 03 297 DB 03H
0014 0000 298 DW 00H
0016 0000 F 299 DW ?C0014
300 ; case 1 :
301 ; SOURCE LINE # 30
0018 302 ?C0015:
303 ; P1 = 0x40; break;
304 ; SOURCE LINE # 31
0018 759040 305 MOV P1,#040H
001B 8008 306 SJMP ?C0014
307 ; case 2 :
308 ; SOURCE LINE # 32
001D 309 ?C0016:
310 ; P1 = 0x20; break;
311 ; SOURCE LINE # 33
001D 759020 312 MOV P1,#020H
0020 8003 313 SJMP ?C0014
314 ; case 3 :
315 ; SOURCE LINE # 34
0022 316 ?C0017:
317 ; P1 = 0x60; break;
318 ; SOURCE LINE # 35
0022 759060 319 MOV P1,#060H
320 ; }
A51 MACRO ASSEMBLER INIT_SE0111 01/27/2003 20:49:45 PAGE 6
321 ; SOURCE LINE # 36
0025 322 ?C0014:
323 ; // while(1){
324 ; ADDRH = Haddr | 0x80;
325 ; SOURCE LINE # 38
0025 E500 F 326 MOV A,Haddr?143
0027 4480 327 ORL A,#080H
0029 FF 328 MOV R7,A
002A 90A400 329 MOV DPTR,#0A400H
002D EF 330 MOV A,R7
002E F0 331 MOVX @DPTR,A
332 ; ADDRL = Laddr;
333 ; SOURCE LINE # 39
002F 90A000 334 MOV DPTR,#0A000H
0032 E500 F 335 MOV A,Laddr?144
0034 F0 336 MOVX @DPTR,A
337 ; SE0111_reg = value;
338 ; SOURCE LINE # 40
0035 909C00 339 MOV DPTR,#09C00H
0038 E500 F 340 MOV A,value?145
003A F0 341 MOVX @DPTR,A
342 ; // }
343 ;
344 ; ADDRH = 0xFF;
345 ; SOURCE LINE # 43
003B 90A400 346 MOV DPTR,#0A400H
003E 74FF 347 MOV A,#0FFH
0040 F0 348 MOVX @DPTR,A
349 ; ADDRL = 0xFF;
350 ; SOURCE LINE # 44
0041 90A000 351 MOV DPTR,#0A000H
0044 74FF 352 MOV A,#0FFH
0046 F0 353 MOVX @DPTR,A
354 ; P1 = 0;
355 ; SOURCE LINE # 45
0047 759000 356 MOV P1,#00H
357 ; }
358 ; SOURCE LINE # 46
004A 359 ?C0018:
004A 22 360 RET
361 ; END OF _se0111_reg_wr
362
363 ;
364 ;
365 ; unsigned char se0111_reg_rd(unsigned char Haddr,unsigned char Laddr,unsigned char slot){
366
---- 367 RSEG ?PR?_se0111_reg_rd?INIT_SE0111
0000 368 _se0111_reg_rd:
369 USING 0
370 ; SOURCE LINE # 49
0000 8F00 F 371 MOV Haddr?247,R7
0002 8D00 F 372 MOV Laddr?248,R5
0004 8B00 F 373 MOV slot?249,R3
374 ; unsigned char value;
375 ; switch(slot){
376 ; SOURCE LINE # 51
0006 E500 F 377 MOV A,slot?249
0008 120000 F 378 LCALL ?C?CCASE
000B 0000 F 379 DW ?C0020
000D 01 380 DB 01H
000E 0000 F 381 DW ?C0021
0010 02 382 DB 02H
0011 0000 F 383 DW ?C0022
0013 03 384 DB 03H
0014 0000 385 DW 00H
0016 0000 F 386 DW ?C0019
A51 MACRO ASSEMBLER INIT_SE0111 01/27/2003 20:49:45 PAGE 7
387 ; case 1 :
388 ; SOURCE LINE # 52
0018 389 ?C0020:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -