⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ds18b20-lcd1602-温度控制.lst

📁 基于51的DS18B20_1Wire温度控制等C,ASM源程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
04E9 74C0            804               MOV  A,#0C0H      ;设置 LCD 的第二行地址
04EB B107            805               CALL  WCOM
04ED E4              806       FILL:   CLR  A            ;填入字符
04EE 93              807               MOVC  A,@A+DPTR   ;由信息区取出字符
04EF B40001          808               CJNE  A,#0,LC1    ;判断是否为结束码
04F2 22              809               RET
04F3 B114            810       LC1:    CALL  WDATA       ;写入数据
04F5 A3              811               INC  DPTR         ;指针加1
04F6 80F5            812               JMP  FILL         ;继续填入字符
04F8 22              813               RET
                     814     ;===============================================
                     815     ;清除一行 LCD 的字符
                     816     ;输入一行空格,来替代原显示字符
                     817     ;===============================================
04F9                 818     CLR_LINE:                  ;清除该行 LCD 的字符
A51 MACRO ASSEMBLER  DS18B20_LCD1602_温禵縚制                                             12/20/2006 22:01:59 PAGE    14

04F9 7818            819               MOV  R0,#24
04FB 7420            820        CL1:   MOV  A,#' '
04FD B114            821               CALL  WDATA
04FF D8FA            822               DJNZ  R0,CL1
0501 22              823               RET
0502 7FFA            824        DE:    MOV  R7,#250     ;延时 500 微秒
0504 DFFE            825               DJNZ  R7,$
0506 22              826               RET
                     827     ;===============================================
                     828     ;命令写入子程序
                     829     ;RS=L,RW=L,D0-D7=指令码,E=高脉冲
                     830     ;以8位控制方式将命令写至LCD
                     831     ;===============================================
0507                 832     WCOM:
0507 F580            833               MOV  P0,A       ;写入命令
0509 C2A0            834               CLR LCD_RS
050B C2A1            835               CLR LCD_RW
050D D2A2            836               SETB LCD_EN
050F B141            837               ACALL DELAY1
0511 C2A2            838               CLR LCD_EN
0513 22              839               RET
                     840     ;===============================================
                     841     ;数据写入子程序
                     842     ;RS=H,RW=L,D0-D7=指令码,E=高脉冲
                     843     ;以8位控制方式将数据写至LCD
                     844     ;===============================================
0514                 845     WDATA:
0514 F580            846               MOV  P0,A       ;写入数据
0516 D2A0            847               SETB  LCD_RS
0518 C2A1            848               CLR  LCD_RW
051A D2A2            849               SETB  LCD_EN
051C B102            850               CALL  DE
051E C2A2            851               CLR  LCD_EN
0520 B102            852               CALL  DE
0522 22              853               RET
                     854     ;===============================================
                     855     ;蜂鸣器响一声子程序
                     856     ;P3.7=0,蜂鸣器响
                     857     ;===============================================
0523                 858     BEEP_BL:
0523 7E64            859              MOV  R6,#100
0525 B130            860      BL2:    CALL  DEX1
0527 B2B7            861              CPL  BEEP        ;对 P3.7 取反
0529 DEFA            862              DJNZ  R6,BL2
052B 7D0A            863              MOV  R5,#10
052D B136            864              CALL  DELAY
052F 22              865              RET
0530 7FB4            866      DEX1:   MOV  R7,#180
0532 00              867      DE2:    NOP
0533 DFFD            868              DJNZ  R7,DE2
0535 22              869              RET
0536                 870     DELAY:                    ;(R5)*延时10MS
0536 7E32            871              MOV  R6,#50
0538 7F64            872      DL1:    MOV  R7,#100
053A DFFE            873              DJNZ  R7,$
053C DEFA            874              DJNZ  R6,DL1
053E DDF6            875              DJNZ  R5,DELAY
0540 22              876              RET
                     877     ;==============================================
                     878     ;延时 5ms 子程序
                     879     ;==============================================
0541                 880     DELAY1:                    ;延时5MS
0541 7E19            881              MOV  R6,#25
0543 7F64            882      DL2:    MOV  R7,#100
0545 DFFE            883              DJNZ  R7,$
0547 DEFA            884              DJNZ  R6,DL2
A51 MACRO ASSEMBLER  DS18B20_LCD1602_温禵縚制                                             12/20/2006 22:01:59 PAGE    15

0549 22              885              RET
                     886     ;==============================================
                     887              END              ;结束
A51 MACRO ASSEMBLER  DS18B20_LCD1602_温禵縚制                                             12/20/2006 22:01:59 PAGE    16

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E   ATTRIBUTES

ACC. . . . . . . .  D ADDR   00E0H   A   
AS0. . . . . . . .  C ADDR   00F4H   A   
AS00 . . . . . . .  C ADDR   00FEH   A   
ASJ01. . . . . . .  C ADDR   013AH   A   
ASJ011 . . . . . .  C ADDR   0148H   A   
ASJ02. . . . . . .  C ADDR   0150H   A   
ASJ021 . . . . . .  C ADDR   015EH   A   
ASJ022 . . . . . .  C ADDR   0166H   A   
ASJ03. . . . . . .  C ADDR   016AH   A   
ASZ01. . . . . . .  C ADDR   0103H   A   
ASZ011 . . . . . .  C ADDR   0112H   A   
ASZ02. . . . . . .  C ADDR   011AH   A   
ASZ021 . . . . . .  C ADDR   0129H   A   
ASZ03. . . . . . .  C ADDR   0131H   A   
B. . . . . . . . .  D ADDR   00F0H   A   
BBJJ1. . . . . . .  C ADDR   0205H   A   
BBJJ2. . . . . . .  C ADDR   03D7H   A   
BBJJ3. . . . . . .  C ADDR   01ECH   A   
BEEP . . . . . . .  B ADDR   00B0H.7 A   
BEEP_BL. . . . . .  C ADDR   0523H   A   
BJ1. . . . . . . .  C ADDR   020DH   A   
BJ2. . . . . . . .  C ADDR   03DFH   A   
BJ3. . . . . . . .  C ADDR   01F4H   A   
BJ4. . . . . . . .  C ADDR   01F6H   A   
BJ5. . . . . . . .  C ADDR   01F8H   A   
BL2. . . . . . . .  C ADDR   0525H   A   
CHULI1 . . . . . .  C ADDR   01A5H   A   
CHULI10. . . . . .  C ADDR   01B0H   A   
CHULI11. . . . . .  C ADDR   01BCH   A   
CHULI2 . . . . . .  C ADDR   01BDH   A   
CHULI20. . . . . .  C ADDR   01C8H   A   
CHULI21. . . . . .  C ADDR   01D2H   A   
CL1. . . . . . . .  C ADDR   04FBH   A   
CLEAR. . . . . . .  C ADDR   0039H   A   
CLR_LINE . . . . .  C ADDR   04F9H   A   
CLR_TWO2 . . . . .  C ADDR   01D3H   A   
CONV . . . . . . .  C ADDR   0435H   A   
CONV0. . . . . . .  C ADDR   0454H   A   
CONV1. . . . . . .  C ADDR   0457H   A   
CONV2. . . . . . .  C ADDR   046EH   A   
CONV3. . . . . . .  C ADDR   0470H   A   
CONV4. . . . . . .  C ADDR   0476H   A   
CONVTEMP . . . . .  C ADDR   0344H   A   
CY . . . . . . . .  B ADDR   00D0H.7 A   
DATE_LINE. . . . .  B ADDR   00B0H.3 A   
DE . . . . . . . .  C ADDR   0502H   A   
DE2. . . . . . . .  C ADDR   0532H   A   
DELAY. . . . . . .  C ADDR   0536H   A   
DELAY1 . . . . . .  C ADDR   0541H   A   
DEX1 . . . . . . .  C ADDR   0530H   A   
DL1. . . . . . . .  C ADDR   0538H   A   
DL2. . . . . . . .  C ADDR   0543H   A   
D_DATA . . . . . .  C ADDR   02E9H   A   
FILL . . . . . . .  C ADDR   04EDH   A   
FLAG1. . . . . . .  B ADDR   0020H.0 A   
FLAG2. . . . . . .  B ADDR   0020H.2 A   
FLAG3. . . . . . .  B ADDR   0020H.3 A   
FLAG4. . . . . . .  B ADDR   0020H.4 A   
HEX2BCD1 . . . . .  C ADDR   0391H   A   
IE . . . . . . . .  D ADDR   00A8H   A   
A51 MACRO ASSEMBLER  DS18B20_LCD1602_温禵縚制                                             12/20/2006 22:01:59 PAGE    17

INIT_LCD . . . . .  C ADDR   04B5H   A   
INT_END. . . . . .  C ADDR   008FH   A   
INT_T0 . . . . . .  C ADDR   0079H   A   
K1 . . . . . . . .  B ADDR   0090H.4 A   
K2 . . . . . . . .  B ADDR   0090H.5 A   
K3 . . . . . . . .  B ADDR   0090H.6 A   
K4 . . . . . . . .  B ADDR   0090H.7 A   
KEY_UD . . . . . .  B ADDR   0020H.1 A   
LC1. . . . . . . .  C ADDR   04F3H   A   
LCDP1. . . . . . .  C ADDR   0494H   A   
LCDP2. . . . . . .  C ADDR   04A1H   A   
LCD_EN . . . . . .  B ADDR   00A0H.2 A   
LCD_PRINT. . . . .  C ADDR   04D4H   A   
LCD_RS . . . . . .  B ADDR   00A0H.0 A   
LCD_RW . . . . . .  B ADDR   00A0H.1 A   
LCD_X. . . . . . .  N NUMB   002FH   A   
LINE1. . . . . . .  C ADDR   04D7H   A   
LINE2. . . . . . .  C ADDR   04E3H   A   
LOOK_ALARM . . . .  C ADDR   039FH   A   
MAIN . . . . . . .  C ADDR   0030H   A   
MENU_ERROR . . . .  C ADDR   0240H   A   
MENU_OK. . . . . .  C ADDR   020FH   A   
M_ALAX1. . . . . .  C ADDR   00D0H   A   
M_ALAX2. . . . . .  C ADDR   03BDH   A   
M_ERROR1 . . . . .  C ADDR   024FH   A   
M_ERROR2 . . . . .  C ADDR   0260H   A   
M_OK1. . . . . . .  C ADDR   021EH   A   
M_OK2. . . . . . .  C ADDR   022FH   A   
P0 . . . . . . . .  D ADDR   0080H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P2 . . . . . . . .  D ADDR   00A0H   A   
P3 . . . . . . . .  D ADDR   00B0H   A   
PROC_END . . . . .  C ADDR   00CFH   A   
PROC_K1. . . . . .  C ADDR   00ACH   A   
PROC_K2. . . . . .  C ADDR   00C1H   A   
PROC_K4. . . . . .  C ADDR   00C5H   A   
PROC_KEY . . . . .  C ADDR   0094H   A   
PSW. . . . . . . .  D ADDR   00D0H   A   
RE00 . . . . . . .  C ADDR   0321H   A   
RE01 . . . . . . .  C ADDR   0323H   A   
READ_E2. . . . . .  C ADDR   02CAH   A   
READ_TEMP. . . . .  C ADDR   0309H   A   
RELAY. . . . . . .  B ADDR   0090H.3 A   
RESET. . . . . . .  C ADDR   0271H   A   
RESET_A1 . . . . .  C ADDR   00E1H   A   
RESET_A2 . . . . .  C ADDR   0175H   A   
RESET_ALARM. . . .  C ADDR   016DH   A   
RE_18B20 . . . . .  C ADDR   029DH   A   
RE_18B20A. . . . .  C ADDR   02A1H   A   
SET_ALARM. . . . .  C ADDR   00F2H   A   
SET_LCD. . . . . .  C ADDR   04AEH   A   
SHOW_DIG2. . . . .  C ADDR   048CH   A   
SHOW_DIG2H . . . .  C ADDR   03E1H   A   
SHOW_DIG2H1. . . .  C ADDR   03ECH   A   
SHOW_DIG2H2. . . .  C AD

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -