📄 lcd2402.lst
字号:
A51 MACRO ASSEMBLER LCD2402 01/05/2007 14:57:13 PAGE 12
0423 689 SHOW_LINE2: ;在 LCD 的第二行显示数字
0423 2430 690 ADD A,#30H
0425 852FF0 691 MOV B,X
0428 912B 692 ACALL LCDP2
042A 22 693 RET
694 ;-----------------------
042B 695 LCDP2: ;在LCD的第二行显示字符
042B C0E0 696 PUSH ACC ;
042D E5F0 697 MOV A,B ;设置显示地址
042F 24C0 698 ADD A,#0C0H ;设置LCD的第二行地址
0431 9138 699 ACALL WR_COMM ;写入命令
0433 D0E0 700 POP ACC ;由堆栈取出A
0435 9145 701 ACALL WR_DATA ;写入数据
0437 22 702 RET
703
704 ;------ 写指令程序-----
705
0438 706 WR_COMM: ;以8位控制方式将命令写至LCD
0438 F590 707 MOV P1,A ;写入命令
043A C2B5 708 CLR RS ;RS=L,RW=L,D0-D7=指令码,E=高脉冲
043C C2B6 709 CLR RW
043E D2B7 710 SETB E
0440 9188 711 ACALL DELAY1
0442 C2B7 712 CLR E
0444 22 713 RET
714
715 ;----------写数据程序 --------------
0445 716 WR_DATA: ;以8位控制方式将数据写至LCD
0445 F590 717 MOV P1,A ;写入数据
0447 D2B5 718 SETB RS
0449 C2B6 719 CLR RW
044B D2B7 720 SETB E
044D 9191 721 CALL DE
044F C2B7 722 CLR E
0451 9191 723 CALL DE
0453 22 724 RET
725
726 ;---------- 清除LCD 的字符-------------
0454 727 CLR_LINE: ;清除该行 LCD 的字符
0454 7818 728 MOV R0,#24
0456 7420 729 CL1: MOV A,#' '
0458 9145 730 ACALL WR_DATA
045A D8FA 731 DJNZ R0,CL1
045C 22 732 RET
733 ;--------------
045D 734 CLR_LINE1: ;清除LCD的第一行字符
045D 7480 735 MOV A,#80H ;设置 LCD 的第一行地址
045F 9138 736 ACALL WR_COMM ;
0461 7818 737 MOV R0,#24 ;设置计数值
0463 7420 738 C1: MOV A,#' ' ;载入空格符至LCD
0465 9145 739 CALL WR_DATA ;输出字符至LCD
0467 D8FA 740 DJNZ R0,C1 ;计数结束
0469 22 741 RET
742
743 ;------------- 鸣响子程序------------
744
046A 745 SPK_BZ:
046A 7E64 746 MOV R6,#100
046C 9177 747 BZ2: ACALL DEX1
046E B2B4 748 CPL SPK
0470 DEFA 749 DJNZ R6,BZ2
0472 7D0A 750 MOV R5,#10
0474 917D 751 ACALL DELAY
0476 22 752 RET
0477 7FB4 753 DEX1: MOV R7,#180
0479 00 754 DE2: NOP
A51 MACRO ASSEMBLER LCD2402 01/05/2007 14:57:13 PAGE 13
047A DFFD 755 DJNZ R7,DE2
047C 22 756 RET
757
758 ;-------------延时子程序-------------
047D 759 DELAY: ;(R5)*延时10MS
047D 7E32 760 MOV R6,#50
047F 7F64 761 DL1: MOV R7,#100
0481 DFFE 762 DJNZ R7,$
0483 DEFA 763 DJNZ R6,DL1
0485 DDF6 764 DJNZ R5,DELAY
0487 22 765 RET
766
0488 767 DELAY1: ;延时5MS
0488 7E19 768 MOV R6,#25
048A 7F64 769 DL2: MOV R7,#100
048C DFFE 770 DJNZ R7,$
048E DEFA 771 DJNZ R6,DL2
0490 22 772 RET
773
0491 774 DE:
0491 7FFA 775 MOV R7,#250
0493 DFFE 776 DJNZ R7,$
0495 22 777 RET
778
779 ;---------------------------
780 END
A51 MACRO ASSEMBLER LCD2402 01/05/2007 14:57:13 PAGE 14
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
A0 . . . . . . . . C ADDR 0086H A
A10. . . . . . . . C ADDR 00E2H A
A11. . . . . . . . C ADDR 00F0H A
A12. . . . . . . . C ADDR 00F8H A
A13. . . . . . . . C ADDR 00FCH A
A2 . . . . . . . . C ADDR 0090H A
A3 . . . . . . . . C ADDR 0095H A
A4 . . . . . . . . C ADDR 00A4H A
A5 . . . . . . . . C ADDR 00ACH A
A6 . . . . . . . . C ADDR 00BBH A
A7 . . . . . . . . C ADDR 00C3H A
A8 . . . . . . . . C ADDR 00CCH A
A9 . . . . . . . . C ADDR 00DAH A
ACC. . . . . . . . D ADDR 00E0H A
B. . . . . . . . . D ADDR 00F0H A
B0 . . . . . . . . C ADDR 0148H A
BJ . . . . . . . . C ADDR 0356H A
BJ2. . . . . . . . C ADDR 0150H A
BJ3. . . . . . . . C ADDR 01D5H A
BJ4. . . . . . . . C ADDR 01D7H A
BJ5. . . . . . . . C ADDR 01D9H A
BJJ. . . . . . . . C ADDR 01CDH A
BZ2. . . . . . . . C ADDR 046CH A
C1 . . . . . . . . C ADDR 0463H A
CL1. . . . . . . . C ADDR 0456H A
CLR_LINE . . . . . C ADDR 0454H A
CLR_LINE1. . . . . C ADDR 045DH A
CO1. . . . . . . . C ADDR 03FCH A
CO2. . . . . . . . C ADDR 0405H A
CO3. . . . . . . . C ADDR 0407H A
CONV . . . . . . . C ADDR 03F2H A
CONV_TEMP. . . . . C ADDR 0214H A
DE . . . . . . . . C ADDR 0491H A
DE2. . . . . . . . C ADDR 0479H A
DELAY. . . . . . . C ADDR 047DH A
DELAY1 . . . . . . C ADDR 0488H A
DEX1 . . . . . . . C ADDR 0477H A
DI0. . . . . . . . C ADDR 02B2H A
DI2. . . . . . . . C ADDR 02C2H A
DISP_BCD . . . . . C ADDR 028FH A
DL1. . . . . . . . C ADDR 047FH A
DL2. . . . . . . . C ADDR 048AH A
DLY. . . . . . . . C ADDR 02CAH A
DOTTAB . . . . . . C ADDR 027FH A
DQ . . . . . . . . B ADDR 00A0H.5 A
D_DATA . . . . . . C ADDR 036BH A
E. . . . . . . . . B ADDR 00B0H.7 A
FILL . . . . . . . C ADDR 03E6H A
FLAG . . . . . . . B ADDR 0020H.0 A
HEX2BCD1 . . . . . C ADDR 0271H A
INIT_LCD . . . . . C ADDR 0330H A
K1 . . . . . . . . B ADDR 00A0H.1 A
K2 . . . . . . . . B ADDR 00A0H.2 A
K3 . . . . . . . . B ADDR 00A0H.3 A
K4 . . . . . . . . B ADDR 00A0H.4 A
KEY_UD . . . . . . B ADDR 0020H.1 A
LC1. . . . . . . . C ADDR 03ECH A
LCDP2. . . . . . . C ADDR 042BH A
LCD_PRINT. . . . . C ADDR 03D5H A
LINE1. . . . . . . C ADDR 03D8H A
A51 MACRO ASSEMBLER LCD2402 01/05/2007 14:57:13 PAGE 15
LINE2. . . . . . . C ADDR 03E0H A
LOOK_ALARM . . . . C ADDR 00FFH A
MAIN . . . . . . . C ADDR 0000H A
MEU_ERROR. . . . . C ADDR 03A4H A
MEU_OK . . . . . . C ADDR 0373H A
M_ALAX1. . . . . . C ADDR 011DH A
M_ALAX2. . . . . . C ADDR 012EH A
M_ERROR1 . . . . . C ADDR 03B3H A
M_ERROR2 . . . . . C ADDR 03C4H A
M_OK1. . . . . . . C ADDR 0382H A
M_OK2. . . . . . . C ADDR 0393H A
P1 . . . . . . . . D ADDR 0090H A
P2 . . . . . . . . D ADDR 00A0H A
P3 . . . . . . . . D ADDR 00B0H A
PK1. . . . . . . . C ADDR 005AH A
PK2. . . . . . . . C ADDR 006FH A
PK3. . . . . . . . C ADDR 0073H A
P_KEY. . . . . . . C ADDR 0042H A
RE0. . . . . . . . C ADDR 0309H A
RE1. . . . . . . . C ADDR 030BH A
READ_1820. . . . . C ADDR 0305H A
RELAY. . . . . . . B ADDR 00A0H.0 A
RESET_1820 . . . . C ADDR 02C3H A
RE_TEMP. . . . . . C ADDR 0021H A
RE_THL . . . . . . C ADDR 0208H A
RS . . . . . . . . B ADDR 00B0H.5 A
RW . . . . . . . . B ADDR 00B0H.6 A
SET_ALARM. . . . . C ADDR 0084H A
SET_DATA . . . . . C ADDR 003BH A
SET_LCD. . . . . . C ADDR 0329H A
SHOW_LINE2 . . . . C ADDR 0423H A
SHOW_LINE2H. . . . C ADDR 0152H A
SHOW_LINE2L. . . . C ADDR 017FH A
SPK. . . . . . . . B ADDR 00B0H.4 A
SPK_BZ . . . . . . C ADDR 046AH A
STORE_DATA . . . . C ADDR 0358H A
S_DATA . . . . . . C ADDR 0363H A
T2 . . . . . . . . C ADDR 02D7H A
T3 . . . . . . . . C ADDR 02DEH A
T4 . . . . . . . . C ADDR 02E2H A
T5 . . . . . . . . C ADDR 02E6H A
T6 . . . . . . . . C ADDR 02E8H A
T7 . . . . . . . . C ADDR 02EAH A
TA1. . . . . . . . C ADDR 0074H A
TC1. . . . . . . . C ADDR 022BH A
TC2. . . . . . . . C ADDR 022EH A
TC3. . . . . . . . C ADDR 0270H A
TCL1 . . . . . . . C ADDR 01B3H A
TCL2 . . . . . . . C ADDR 01BDH A
TEMPH. . . . . . . N NUMB 0026H A
TEMPHC . . . . . . N NUMB 0029H A
TEMPL. . . . . . . N NUMB 0025H A
TEMPLC . . . . . . N NUMB 002AH A
TEMP_BJ. . . . . . C ADDR 0343H A
TEMP_BJ1 . . . . . C ADDR 013FH A
TEMP_BJ3 . . . . . C ADDR 01C5H A
TEMP_COMP. . . . . C ADDR 019FH A
TEMP_TH. . . . . . N NUMB 0027H A
TEMP_TL. . . . . . N NUMB 0028H A
TEMP_ZH. . . . . . N NUMB 0024H A
TOOP . . . . . . . C ADDR 0004H A
TOOP1. . . . . . . C ADDR 0011H A
TOOP2. . . . . . . C ADDR 0017H A
TP1. . . . . . . . C ADDR 034EH A
WR1. . . . . . . . C ADDR 02F0H A
WRITE_1820 . . . . C ADDR 02EDH A
A51 MACRO ASSEMBLER LCD2402 01/05/2007 14:57:13 PAGE 16
WRITE_E2 . . . . . C ADDR 01FBH A
WR_COMM. . . . . . C ADDR 0438H A
WR_DATA. . . . . . C ADDR 0445H A
WR_T . . . . . . . C ADDR 01DFH A
WR_THL . . . . . . C ADDR 01DBH A
X. . . . . . . . . N NUMB 002FH A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -