NOP ;
NOP ;
NOP ;
SETB TEMPDIN ;
MOV R6, #07H ; DELAY 15us
DJNZ R6, $ ;
MOV C, TEMPDIN ;
MOV R6, #3CH ; DELAY 120us
DJNZ R6, $ ;
RRC A ;
SETB TEMPDIN ;
DJNZ R7, READDS1820LOOP ;
MOV R6, #3CH ; DELAY 120us
DJNZ R6, $ ;
RET ;
;写DS18B20的程序, 从DS18B20中写一个字节的数据
WRITEDS1820: MOV R7, #08H ;
SETB TEMPDIN ;
NOP ;
NOP ;
WRITEDS1820LOP: CLR TEMPDIN ;
MOV R6, #07H ; DELAY 15us
DJNZ R6, $ ;
RRC A ;
MOV TEMPDIN, C ;
MOV R6, #34H ; DELAY 104us
DJNZ R6, $ ;
SETB TEMPDIN ;
DJNZ R7, WRITEDS1820LOP ;
RET ;
;READ TEMP
READTEMP: LCALL INITDS1820 ;
MOV A, #0CCH ;
LCALL WRITEDS1820 ; SKIP ROM
MOV R6, #34H ; DELAY 104us
DJNZ R6, $ ;
MOV A, #44H ;
LCALL WRITEDS1820 ; START CONVERSION
MOV R6, #34H ; DELAY 104us
DJNZ R6, $ ;
RET ;
;
READTEMP1: LCALL INITDS1820 ;
MOV A, #0CCH ;
LCALL WRITEDS1820 ; SKIP ROM
MOV R6, #34H ; DELAY 104us
DJNZ R6, $ ;
MOV A, #0BEH ;
LCALL WRITEDS1820 ; SCRATCHPAD
MOV R6, #34H ; DELAY 104us
DJNZ R6, $ ;
上一页 [1] [2] [3] [4] [5] [6] [7] [8] 下一页
本文关键字:温度计 51单片机,单片机-工控设备 - 51单片机