DS18B20数字温度计的设计(一)(第6页)
本文共计10691个字,预计阅读时长36分钟。【 字体:大 中 小 】
微信号已复制到剪贴板
INITDS1820OUT: SETB TEMPDIN
RET
READDS1820: MOV R7 ,#08H
SETB TEMPDIN
NOP
NOP
READDS1820LOOP: CLR TEMPDIN
NOP
NOP
NOP
SETB TEMPIND
MOV R6 ,#07H
DJNZ R6 ,$
MOV C , TEMPDIN
MOV R6 , #3CH
DJNZ R6 , $
RRC A
SETB TEMPDIN
DJNZ R7 ,READDS1820LOOP
MOV R6 , #3CH
DJNZ R6 , $
RET
WRITEDS1820: MOV R7 ,#08H
SETB TEMPDIN
NOP
NOP
WRITEDS1820LOP: CLR TEMPDIN
MOV R6 ,#07H
DJNZ R6, $
RRC A
MOV TEMPDIN
DJNZ R7 , WRITEDS1820LOP
RET
READTEMP: LCALL INITDS1820
MOV A ,#0CCH
LCALL WRITEDS1820
MOV R6 ,# 34H
DJNZ R6 ,$
MOV A , #44H
LCALL WRITEDS1820
MOV R6 ,# 34H
DJNZ R6 ,$
RET
READTEMP1: LCALL INITDS1820
MOV A , #0CCH
LCALL WRITEDS1820
MOV R6 , #34H
DJNZ R6 , $
MOV A , #0BEH
LCALL WRITEDS1820
MOV R6 , #34H
DJNZ R6 , $
MOV R5 , #09H
MOV B , #00H
READTEMP2: LCALL READDS1820
MOV @R0 , A
INC R0
READTEMP21: LCALL CRC8CAL
DJNZ R5 , READTEMP2
MOV A , B
JNZ READTEMPOUT
MOV A , TEMPHEAD +0
MOV TEMPL , A
MOV A , TEMPHEAD +1
READTEMPOUT: RET
CONVEMP: MOV A , TEMPH
ANL A , #80H
JZ TEMPC1
CLR C
MOV A , TEMPL
CLP A
ADD A, #01H
MOV TEMPL , A
MOV A , TEMPH
CLP A
ADDC A , #00H
MOV TEMPH , A
