基于单片机的热电偶测温代码
- 格式:doc
- 大小:54.50 KB
- 文档页数:8
#include "head\\includes.h"
; void lcd1602_delay(uchar delaytime)
RSEG ?PR?_lcd1602_delay?LCD1602
_lcd1602_delay:
USING 0
; SOURCE LINE # 9
;---- Variable 'delaytime?040' assigned to Register 'R7' ----
; {
; SOURCE LINE # 10
?C0001:
; while(delaytime)delaytime--;
; SOURCE LINE # 11
MOV A,R7
JZ ?C0003
DEC R7
SJMP ?C0001
; }
; SOURCE LINE # 12
?C0003:
RET
; END OF _lcd1602_delay
; void write_lcd1602_command(uchar write_command) //写LCD命令
RSEG ?PR?_write_lcd1602_command?LCD1602
_write_lcd1602_command:
USING 0
; SOURCE LINE # 13
;---- Variable 'write_command?141' assigned to Register 'R6' ---- MOV R6,AR7
; {
; SOURCE LINE # 14
; lcd1602_delay(10);
; SOURCE LINE # 15
MOV R7,#0AH
LCALL _lcd1602_delay
; /*
; LCD1602_RS=0;
; LCD1602_RW=0;
; LCD1602_EN=1;//*/
; LCD1602_CWORD=0;
; SOURCE LINE # 20
CLR A
MOV DPTR,#LCD1602_CWORD
MOVX @DPTR,A
; LCD1602_CWORD=LCD1602_CWORD&LCD1602_RS_CLR; //RS=0,RW=0,E=0 ; SOURCE LINE # 21
MOVX @DPTR,A
; LCD1602_CON_PORT=LCD1602_CWORD;
; SOURCE LINE # 22
MOVX A,@DPTR
MOV R7,A
MOV DPTR,#0FF90H
MOVX @DPTR,A
;
; LCD1602_CWORD=LCD1602_CWORD|LCD1602_EN_SET;//rs=0,rw=0,e=1
; SOURCE LINE # 24
MOV A,R7
ORL A,#04H
MOV DPTR,#LCD1602_CWORD
MOVX @DPTR,A
; LCD1602_CON_PORT=LCD1602_CWORD;//*/
; SOURCE LINE # 25
MOVX A,@DPTR
MOV R7,A
MOV DPTR,#0FF90H
MOVX @DPTR,A
; //OUTPOT COMMAND
; LCD1602_DAT_PORT=write_command;
; SOURCE LINE # 27
MOV DPTR,#0FF80H
MOV A,R6
MOVX @DPTR,A
; _nop_(); //空指令占用一个指令周期,精确延时
; SOURCE LINE # 28
NOP
; _nop_(); //空指令占用一个指令周期,精确延时
; SOURCE LINE # 29
NOP
; // LCD1602_EN=0;
; LCD1602_CWORD=LCD1602_CWORD&LCD1602_EN_CLR;
; SOURCE LINE # 31
MOV A,R7
ANL A,#0FBH
MOV DPTR,#LCD1602_CWORD
MOVX @DPTR,A
; LCD1602_CON_PORT=LCD1602_CWORD;//*/
; SOURCE LINE # 32
MOVX A,@DPTR
MOV R7,A
MOV DPTR,#0FF90H
MOVX @DPTR,A
; _nop_(); //空指令占用一个指令周期,精确延时
; SOURCE LINE # 33
NOP
; _nop_(); //空指令占用一个指令周期,精确延时
; SOURCE LINE # 34
NOP
; // LCD1602_RW=1;
; LCD1602_CWORD=LCD1602_CWORD|LCD1602_RW_SET;
; SOURCE LINE # 36
MOV A,R7
ORL A,#08H
MOV DPTR,#LCD1602_CWORD
MOVX @DPTR,A
; LCD1602_CON_PORT=LCD1602_CWORD;//*/
; SOURCE LINE # 37
MOV DPTR,#0FF90H
MOVX @DPTR,A
;
; }
; SOURCE LINE # 39
RET
; .\OUT\lcd1602.SRC generated from: USER_C\lcd1602.c
; COMPILER INVOKED BY:
; C:\Keil\C51\BIN\C51.EXE USER_C\lcd1602.c LARGE DEBUG OBJECTEXTEND PRINT(.\LIST\lcd1602.lst) SRC(.\OUT\lcd1602.SRC)
$NOMOD51
NAME LCD1602
CCF2 BIT 0D8H.2
TB80 BIT 098H.3
SPI0CKR DATA 09DH
CCF3 BIT 0D8H.3
P0 DA TA 080H
SPIEN BIT 0F8H.0
CCF4 BIT 0D8H.4
SM00 BIT 098H.7
P1 DA TA 090H