📄 por.lst
字号:
0294 74C0 +1 513 MOV A,#0C0H
0296 51D2 +1 514 CALL WCOM
0298 +1 515 FILL:
0298 E4 +1 516 CLR A
0299 93 +1 517 MOVC A,@A+DPTR
029A B40001 +1 518 CJNE A,#0,LL1
029D 22 +1 519 RET
029E +1 520 LL1:
029E 51E3 +1 521 CALL WDATA
02A0 A3 +1 522 INC DPTR
02A1 80F5 +1 523 JMP FILL
02A3 22 +1 524 RET
+1 525 ;---------------------------
02A4 +1 526 CLR_LINE:
02A4 7818 +1 527 MOV R0,#24
02A6 7420 +1 528 C1: MOV A,#' '
02A8 51E3 +1 529 CALL WDATA
02AA D8FA +1 530 DJNZ R0,C1
02AC 22 +1 531 RET
+1 532 ;-------------------------------
02AD 7F05 +1 533 DE: MOV R7, #5
02AF DFFE +1 534 DJNZ R7,$
02B1 22 +1 535 RET
+1 536 ;--------------------
02B2 +1 537 EN1:
02B2 D281 +1 538 SETB EN
02B4 51AD +1 539 CALL DE
02B6 C281 +1 540 CLR EN
02B8 51AD +1 541 CALL DE
02BA 22 +1 542 RET
+1 543 ;-------------------
02BB +1 544 INIT_LCD:
02BB 758030 +1 545 MOV P0, #30H
02BE 51B2 +1 546 CALL EN1
02C0 758030 +1 547 MOV P0, #30H
02C3 51B2 +1 548 CALL EN1
02C5 758030 +1 549 MOV P0, #30H
02C8 51B2 +1 550 CALL EN1
+1 551
02CA 758020 +1 552 MOV P0, #20H
02CD 51B2 +1 553 CALL EN1
02CF 5161 +1 554 CALL INIT_LCD1
02D1 22 +1 555 RET
+1 556 ;----------------------
02D2 +1 557 WCOM:
+1 558 ; WRITE HI 4 BIT
02D2 F580 +1 559 MOV P0, A
02D4 C280 +1 560 CLR RS ; SET COMMAND
02D6 51B2 +1 561 CALL EN1
02D8 33 +1 562 RLC A
02D9 33 +1 563 RLC A
02DA 33 +1 564 RLC A
02DB 33 +1 565 RLC A
+1 566 ; WRITE LO 4 BIT
02DC F580 +1 567 MOV P0, A
02DE C280 +1 568 CLR RS ; SET COMMAND
02E0 51B2 +1 569 CALL EN1
02E2 22 +1 570 RET
+1 571 ;--------------------------------------
A51 MACRO ASSEMBLER POR 01/22/2006 22:35:54 PAGE 10
02E3 +1 572 WDATA:
+1 573 ; WRITE HI 4 BIT
02E3 F580 +1 574 MOV P0, A
02E5 D280 +1 575 SETB RS ; SET DATA
02E7 51B2 +1 576 CALL EN1
02E9 33 +1 577 RLC A
02EA 33 +1 578 RLC A
02EB 33 +1 579 RLC A
02EC 33 +1 580 RLC A
+1 581 ; WRITE LO 4 BIT
02ED F580 +1 582 MOV P0, A
02EF D280 +1 583 SETB RS ; SET DATA
02F1 51B2 +1 584 CALL EN1
02F3 22 +1 585 RET
+1 586 ;--------------------------------------
02F4 2E2E202E +1 587 LMESS1: DB ".. .. IO51 ORGAN",0
02F8 2E20494F
02FC 3531204F
0300 5247414E
0304 00
0305 2E2E2E2E +1 588 LMESS2: DB "....9-CLR 8 PLAY",0
0309 392D434C
030D 52203820
0311 504C4159
0315 00
+1 589 ;------------------------------------
+1 590 ; PRINT A CHAR ON LCD LINE 1
+1 591 ; A=ASC DATA
+1 592 ; B=LINE X POS.
0316 +1 593 LCDP1:
+1 594 ; LINE 1
0316 C0E0 +1 595 PUSH ACC
0318 E5F0 +1 596 MOV A,B
031A 2480 +1 597 ADD A,#80H
031C 51D2 +1 598 CALL WCOM
031E D0E0 +1 599 POP ACC
0320 51E3 +1 600 CALL WDATA
0322 22 +1 601 RET
+1 602 ;-------------------------------
+1 603 ; PRINT A CHAR ON LCD LINE 2
+1 604 ; A=ASC DATA
+1 605 ; B=LINE X POS.
0323 +1 606 LCDP2:
+1 607 ; LINE 1
0323 C0E0 +1 608 PUSH ACC
0325 E5F0 +1 609 MOV A,B
0327 24C0 +1 610 ADD A,#0C0H
0329 51D2 +1 611 CALL WCOM
032B D0E0 +1 612 POP ACC
032D 51E3 +1 613 CALL WDATA
032F 22 +1 614 RET
+1 615 ;------------------------------
+1 616 ; A:DIG X: LCD X POS
+1 617 ; SHOW ON LCD LINE1
0330 +1 618 SHOW_DIG:
0330 75F00A +1 619 MOV B,#10
0333 84 +1 620 DIV AB
0334 2430 +1 621 ADD A,#30H
0336 C0F0 +1 622 PUSH B
0338 8578F0 +1 623 MOV B,X
033B 7116 +1 624 CALL LCDP1
+1 625
033D D0F0 +1 626 POP B
033F E5F0 +1 627 MOV A,B
0341 2430 +1 628 ADD A,#30H
0343 0578 +1 629 INC X
A51 MACRO ASSEMBLER POR 01/22/2006 22:35:54 PAGE 11
0345 8578F0 +1 630 MOV B,X
0348 7116 +1 631 CALL LCDP1
034A 22 +1 632 RET
+1 633 ;-------------------------
+1 634 ; A:DIG X: LCD X POS
+1 635 ; SHOW ON LCD LINE2
034B +1 636 SHOW_DIG2:
034B 75F00A +1 637 MOV B,#10
034E 84 +1 638 DIV AB
034F 2430 +1 639 ADD A,#30H
0351 C0F0 +1 640 PUSH B
0353 8578F0 +1 641 MOV B,X
0356 7123 +1 642 CALL LCDP2
+1 643
0358 D0F0 +1 644 POP B
035A E5F0 +1 645 MOV A,B
035C 2430 +1 646 ADD A,#30H
035E 0578 +1 647 INC X
0360 8578F0 +1 648 MOV B,X
0363 7123 +1 649 CALL LCDP2
0365 22 +1 650 RET
+1 651 ;--------------------------
652
653 END
A51 MACRO ASSEMBLER POR 01/22/2006 22:35:54 PAGE 12
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
A1 . . . . . . . . C ADDR 0152H A
A10. . . . . . . . C ADDR 019AH A
A11. . . . . . . . C ADDR 01A2H A
A12. . . . . . . . C ADDR 01AAH A
A13. . . . . . . . C ADDR 01B2H A
A14. . . . . . . . C ADDR 01BAH A
A2 . . . . . . . . C ADDR 015AH A
A3 . . . . . . . . C ADDR 0162H A
A4 . . . . . . . . C ADDR 016AH A
A5 . . . . . . . . C ADDR 0172H A
A6 . . . . . . . . C ADDR 017AH A
A7 . . . . . . . . C ADDR 0182H A
A8 . . . . . . . . C ADDR 018AH A
A9 . . . . . . . . C ADDR 0192H A
ACC. . . . . . . . D ADDR 00E0H A
B. . . . . . . . . D ADDR 00F0H A
B1 . . . . . . . . C ADDR 01D7H A
B2 . . . . . . . . C ADDR 01E2H A
B3 . . . . . . . . C ADDR 0207H A
BACK . . . . . . . C ADDR 0117H A
BEGIN. . . . . . . C ADDR 000DH A
BUF_KEY. . . . . . N NUMB 0074H A
BZ . . . . . . . . C ADDR 0243H A
C1 . . . . . . . . C ADDR 02A6H A
CL . . . . . . . . C ADDR 0278H A
CLR_LINE . . . . . C ADDR 02A4H A
CLR_LINE1. . . . . C ADDR 0272H A
CO . . . . . . . . N NUMB 0077H A
D1 . . . . . . . . C ADDR 00CEH A
DE . . . . . . . . C ADDR 02ADH A
DELAY. . . . . . . C ADDR 00CCH A
EN . . . . . . . . B ADDR 0080H.1 A
EN1. . . . . . . . C ADDR 02B2H A
FILL . . . . . . . C ADDR 0298H A
FKEY . . . . . . . B ADDR 0020H.0 A
GE1. . . . . . . . C ADDR 0137H A
GET_KEY. . . . . . C ADDR 012EH A
HI . . . . . . . . N NUMB 0072H A
HI_LIST. . . . . . C ADDR 0080H A
IE . . . . . . . . D ADDR 00A8H A
INIT_LCD . . . . . C ADDR 02BBH A
INIT_LCD1. . . . . C ADDR 0261H A
K4 . . . . . . . . B ADDR 00A0H.7 A
KEY_NO . . . . . . N NUMB 0075H A
L1 . . . . . . . . C ADDR 00FAH A
L2 . . . . . . . . C ADDR 0107H A
LCDP1. . . . . . . C ADDR 0316H A
LCDP2. . . . . . . C ADDR 0323H A
LCD_PRINT. . . . . C ADDR 027FH A
LE1. . . . . . . . C ADDR 00D9H A
LED_BL . . . . . . C ADDR 00D7H A
LEN. . . . . . . . C ADDR 00B5H A
LINE1. . . . . . . C ADDR 0282H A
LINE2. . . . . . . C ADDR 028EH A
LL1. . . . . . . . C ADDR 029EH A
LMESS1 . . . . . . C ADDR 02F4H A
LMESS2 . . . . . . C ADDR 0305H A
LO . . . . . . . . N NUMB 0071H A
LOAD_VALUE . . . . C ADDR 0068H A
LOOP . . . . . . . C ADDR 01C0H A
A51 MACRO ASSEMBLER POR 01/22/2006 22:35:54 PAGE 13
LO_LIST. . . . . . C ADDR 008FH A
MEM. . . . . . . . N NUMB 0030H A
MNO. . . . . . . . N NUMB 0040H A
N1 . . . . . . . . C ADDR 010EH A
NO . . . . . . . . N NUMB 0076H A
NO_KEY . . . . . . C ADDR 011DH A
P0 . . . . . . . . D ADDR 0080H A
P2 . . . . . . . . D ADDR 00A0H A
P3 . . . . . . . . D ADDR 00B0H A
PA0. . . . . . . . C ADDR 0049H A
PA1. . . . . . . . C ADDR 0054H A
PL1. . . . . . . . C ADDR 0039H A
PLAY . . . . . . . C ADDR 0035H A
PLAY_SONG. . . . . C ADDR 0046H A
PSW. . . . . . . . D ADDR 00D0H A
RP0. . . . . . . . C ADDR 021AH A
RP1. . . . . . . . C ADDR 0221H A
RP2. . . . . . . . C ADDR 022BH A
RPLAY. . . . . . . C ADDR 020DH A
RS . . . . . . . . B ADDR 0080H.0 A
RUN. . . . . . . . C ADDR 01BBH A
RY1. . . . . . . . B ADDR 00B0H.5 A
RY2. . . . . . . . B ADDR 00B0H.6 A
SCAN . . . . . . . C ADDR 00F2H A
SCAN_KEY . . . . . C ADDR 0120H A
SET_LCD. . . . . . C ADDR 024AH A
SHOW_DIG . . . . . C ADDR 0330H A
SHOW_DIG2. . . . . C ADDR 034BH A
SO . . . . . . . . C ADDR 0145H A
SONG . . . . . . . C ADDR 009EH A
SOP. . . . . . . . C ADDR 014AH A
SOUND_OFF. . . . . C ADDR 0065H A
SOUND_ON . . . . . C ADDR 0062H A
SPK. . . . . . . . B ADDR 00B0H.4 A
T0_INT . . . . . . C ADDR 0077H A
TABLE_DIG. . . . . C ADDR 00E2H A
TC . . . . . . . . N NUMB 0073H A
TH0. . . . . . . . D ADDR 008CH A
TL0. . . . . . . . D ADDR 008AH A
TMOD . . . . . . . D ADDR 0089H A
TR0. . . . . . . . B ADDR 0088H.4 A
WAIT_OFF . . . . . C ADDR 0128H A
WCOM . . . . . . . C ADDR 02D2H A
WDATA. . . . . . . C ADDR 02E3H A
WLED . . . . . . . B ADDR 00B0H.7 A
X. . . . . . . . . N NUMB 0078H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -