📄 a.lst
字号:
049D 636B6572
04A1 00
04A2 354 ERR8:
04A2 4E4F2E32 355 DB "NO.2 R>40M ",00
04A6 20202020
04AA 2020523E
04AE 34304D20
04B2 00
04B3 356 ERR9:
04B3 72657369 357 DB "resistor checker",00
04B7 73746F72
04BB 20636865
04BF 636B6572
04C3 00
04C4 358 ERRA:
04C4 4E4F2E33 359 DB "NO.3 R<40K ",00
04C8 20202020
04CC 2020523C
04D0 34304B20
A51 MACRO ASSEMBLER A 01/23/2008 09:29:02 PAGE 8
04D4 00
04D5 360 ERRB:
04D5 72657369 361 DB "resistor checker",00
04D9 73746F72
04DD 20636865
04E1 636B6572
04E5 00
04E6 362 ERRC:
04E6 4E4F2E33 363 DB "NO.3 R>60K ",00
04EA 20202020
04EE 2020523E
04F2 36304B20
04F6 00
04F7 364 LCD_PRINT: ;在LCD的第一行或第二行显示字符
365
04F7 B4010C 366 CJNE A,#1,LINE2 ;判断是否为第一行
04FA 7480 367 LINE1: MOV A,#80H ;设置 LCD 的第一行地址
04FC B139 368 CALL WCOM ;写入命令
04FE B11C 369 CALL CLR_LINE ;清除该行字符数据
0500 7480 370 MOV A,#80H ;设置 LCD 的第一行地址
0502 B139 371 CALL WCOM ;写入命令
0504 800A 372 JMP FILL
373
0506 74C0 374 LINE2: MOV A,#0C0H ;设置 LCD 的第二行地址
0508 B139 375 CALL WCOM ;写入命令
050A B11C 376 CALL CLR_LINE ;清除该行字符数据
050C 74C0 377 MOV A,#0C0H ;设置 LCD 的第二行地址
050E B139 378 CALL WCOM
0510 E4 379 FILL: CLR A ;填入字符
0511 93 380 MOVC A,@A+DPTR ;由消息区取出字符
0512 B40001 381 CJNE A,#0,LC1 ;判断是否为结束码
0515 22 382 RET
0516 B154 383 LC1: CALL WDATA ;写入数据
0518 A3 384 INC DPTR ;指针加1
0519 80F5 385 JMP FILL ;继续填入字符
051B 22 386 RET
387 ;=========================================
051C 388 CLR_LINE: ;清除该行 LCD 的字符
389
390
051C 7818 391 MOV R0,#24
051E 7420 392 CL1: MOV A,#' '
0520 B154 393 CALL WDATA
0522 D8FA 394 DJNZ R0,CL1
0524 22 395 RET
0525 C2A5 396 ENA: CLR RS
0527 00 397 NOP
0528 00 398 NOP
0529 00 399 NOP
052A C2A3 400 CLR RW
052C 00 401 NOP
052D 00 402 NOP
052E 00 403 NOP
052F C2A2 404 CLR E
0531 120563 405 LCALL DELAY
0534 D2A2 406 SETB E
0536 00 407 NOP
0537 00 408 NOP
0538 22 409 RET
0539 410 WCOM: ;以8位控制方式将命令写至LCD
0539 F580 411 MOV P0,A ;写入命令
053B C2A5 412 CLR RS ;RS=L,RW=L,D0-D7=指令码,E=高脉冲
053D C2A3 413 CLR RW
053F D2A2 414 SETB E
0541 B163 415 ACALL DELAY
0543 C2A2 416 CLR E
A51 MACRO ASSEMBLER A 01/23/2008 09:29:02 PAGE 9
0545 22 417 RET
0546 418 WRITE:
0546 D2A5 419 SETB RS
0548 00 420 NOP
0549 C2A3 421 CLR RW
054B 00 422 NOP
054C C2A2 423 CLR E
054E 120563 424 LCALL DELAY
0551 D2A2 425 SETB E
0553 22 426 RET
427
0554 428 WDATA: ;以8位控制方式将数据写至LCD
0554 F580 429 MOV P0,A ;写入数据
0556 D2A5 430 SETB RS
0558 C2A3 431 CLR RW
055A D2A2 432 SETB E
055C B163 433 CALL DELAY
055E C2A2 434 CLR E
0560 B163 435 CALL DELAY
0562 22 436 RET
0563 7F64 437 DELAY: MOV R7,#100
0565 7E0A 438 D1: MOV R6,#10
0567 DEFE 439 D2: DJNZ R6,d2
0569 DFFA 440 DJNZ R7,d1
056B 22 441 RET
442
443
056C 7FC8 444 DELAY2: MOV R7,#200
056E 7E64 445 D10: MOV R6,#100
0570 DEFE 446 D20: DJNZ R6,d20
0572 DFFA 447 DJNZ R7,d10
0574 22 448 RET
0575 7FC8 449 DELAY3: MOV R7,#200
0577 7E64 450 D30: MOV R6,#100
0579 7D02 451 D40: MOV R5,#2
057B DDFE 452 DJNZ R5,$
057D DEFA 453 DJNZ R6,D40
057F DFF6 454 DJNZ R7,D30
0581 22 455 RET
456
457 END
A51 MACRO ASSEMBLER A 01/23/2008 09:29:02 PAGE 10
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
BUTT1. . . . . . . C ADDR 0238H A
BUTT2. . . . . . . C ADDR 024AH A
BUTT3. . . . . . . C ADDR 025CH A
BUTT4. . . . . . . C ADDR 026EH A
BUTT5. . . . . . . C ADDR 0280H A
BUTT6. . . . . . . C ADDR 0292H A
CHECKER. . . . . . C ADDR 01FFH A
CL1. . . . . . . . C ADDR 051EH A
CLR_LINE . . . . . C ADDR 051CH A
D1 . . . . . . . . C ADDR 0565H A
D10. . . . . . . . C ADDR 056EH A
D2 . . . . . . . . C ADDR 0567H A
D20. . . . . . . . C ADDR 0570H A
D30. . . . . . . . C ADDR 0577H A
D40. . . . . . . . C ADDR 0579H A
DELAY. . . . . . . C ADDR 0563H A
DELAY2 . . . . . . C ADDR 056CH A
DELAY3 . . . . . . C ADDR 0575H A
E. . . . . . . . . B ADDR 00A0H.2 A
ENA. . . . . . . . C ADDR 0525H A
ERR1 . . . . . . . C ADDR 042BH A
ERR2 . . . . . . . C ADDR 043CH A
ERR3 . . . . . . . C ADDR 044DH A
ERR4 . . . . . . . C ADDR 045EH A
ERR5 . . . . . . . C ADDR 046FH A
ERR6 . . . . . . . C ADDR 0480H A
ERR7 . . . . . . . C ADDR 0491H A
ERR8 . . . . . . . C ADDR 04A2H A
ERR9 . . . . . . . C ADDR 04B3H A
ERRA . . . . . . . C ADDR 04C4H A
ERRB . . . . . . . C ADDR 04D5H A
ERRC . . . . . . . C ADDR 04E6H A
FILL . . . . . . . C ADDR 0510H A
K1 . . . . . . . . C ADDR 02A4H A
L1 . . . . . . . . C ADDR 02C0H A
L2 . . . . . . . . C ADDR 02D9H A
L3 . . . . . . . . C ADDR 02F2H A
L4 . . . . . . . . C ADDR 030BH A
L5 . . . . . . . . C ADDR 0324H A
LC1. . . . . . . . C ADDR 0516H A
LCD_PRINT. . . . . C ADDR 04F7H A
LINE1. . . . . . . C ADDR 04FAH A
LINE2. . . . . . . C ADDR 0506H A
MAIN . . . . . . . C ADDR 0030H A
MAIN1. . . . . . . C ADDR 0069H A
NO1. . . . . . . . C ADDR 033DH A
NO11 . . . . . . . C ADDR 034EH A
NO2. . . . . . . . C ADDR 0381H A
NO22 . . . . . . . C ADDR 0392H A
NO3. . . . . . . . C ADDR 03C5H A
NO33 . . . . . . . C ADDR 03D6H A
NO_1 . . . . . . . C ADDR 035FH A
NO_11. . . . . . . C ADDR 0370H A
NO_2 . . . . . . . C ADDR 03A3H A
NO_22. . . . . . . C ADDR 03B4H A
NO_3 . . . . . . . C ADDR 03E7H A
NO_33. . . . . . . C ADDR 03F8H A
P0 . . . . . . . . D ADDR 0080H A
P1 . . . . . . . . D ADDR 0090H A
P2 . . . . . . . . D ADDR 00A0H A
A51 MACRO ASSEMBLER A 01/23/2008 09:29:02 PAGE 11
P3 . . . . . . . . D ADDR 00B0H A
PAIDUAN. . . . . . C ADDR 01F5H A
RS . . . . . . . . B ADDR 00A0H.5 A
RW . . . . . . . . B ADDR 00A0H.3 A
TAB. . . . . . . . C ADDR 0409H A
TAB1 . . . . . . . C ADDR 041AH A
WAIT . . . . . . . C ADDR 02B1H A
WAIT1. . . . . . . C ADDR 023AH A
WAIT2. . . . . . . C ADDR 024CH A
WAIT3. . . . . . . C ADDR 025EH A
WAIT4. . . . . . . C ADDR 0270H A
WAIT5. . . . . . . C ADDR 0282H A
WAIT6. . . . . . . C ADDR 0294H A
WCOM . . . . . . . C ADDR 0539H A
WDATA. . . . . . . C ADDR 0554H A
WRITE. . . . . . . C ADDR 0546H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -