DS18B20温度计
点击数:7623 次 录入时间:03-04 11:50:32 整理:http://www.55dianzi.com 51单片机
MOV R5, #09H ;
MOV R0, #TEMPHEAD ;
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 ;
MOV TEMPH, A ;
READTEMPOUT: RET ;
;处理温度 BCD 码子程序
CONVTEMP: MOV A, TEMPH ;
ANL A, #80H ;
JZ TEMPC1 ;
CLR C ;
MOV A, TEMPL ;
CPL A ;
ADD A, #01H ;
MOV TEMPL, A ;
MOV A, TEMPH ; -
CPL A ;
ADDC A, #00H ;
MOV TEMPH, A ; TEMPHC HI = 符号位
MOV TEMPHC, #0BH ;
SJMP TEMPC11 ;
;
TEMPC1: MOV TEMPHC, #0AH ; +
TEMPC11: MOV A,TEMPHC
SWAP A
MOV TEMPHC,A
MOV A, TEMPL ;
ANL A, #0FH ; 乘 0.0625
MOV DPTR, #TEMPDOTTAB ;
MOV C A, @A + DPTR ;
MOV TEMPLC, A ; TEMPLC LOW = 小数部分 BCD
;
MOV A, TEMPL ; 整数部分
ANL A, #0F0H ;
SWAP A ;
MOV TEMPL, A ;
MOV A, TEMPH ;
ANL A, #0FH ;
SWAP A ;
ORL A, TEMPL ;
LCALL HEX2BCD1 ;
MOV TEMPL, A ;
ANL A, #0F0H ;
SWAP A ;
ORL A, TEMPHC ; TEMPHC LOW = 十位数 BCD
上一页 [1] [2] [3] [4] [5] [6] [7] [8] 下一页
本文关键字:温度计 51单片机,单片机-工控设备 - 51单片机