(毕业设计)基于89C51和DS18B20的数字温度计设计(7)

2018-11-28 19:45

JZ TEMPC12 ANL A,#0FH SWAP A MOV R4,A

MOV A,TEMPHC ;TEMPHC HI = 百位数 BCD

ANL A,#0FH ORL A,R4 MOV TEMPHC,A TEMPC12: RET

;************************ 二-十进制转换子程序 *****************************

HEX2BCD1: MOV B,#064H DIV AB MOV R4,A MOV A,#0AH XCH A,B

DIV AB SWAP A ORL A,B RET

31

TEMPDOTTAB: DB

00H,00H,01H,01H,02H,03H,03H,04H ; 小数部分码表 DB 05H,05H,06H,06H,07H,08H,08H,09H

;********************** 查询温度报警值子程序 *************************** LOOK_ALARM: 到显示信息区

MOV A,#2 LCALL LCD_PRINT MOV A,#0C6H LCALL TEMP_BJ1 MOV A,TEMP_TH MOV LCD_X,#3

;加载TH数据 ;设置显示位置

;显示在第二行

MOV DPTR,#M_ALAX2 ;指针指

LCALL SHOW_DIG2H ;显示数据 MOV A,#0CEH LCALL TEMP_BJ1 MOV A,TEMP_TL MOV LCD_X,#12

;加载TL数据 ;设置显示位置

LCALL SHOW_DIG2L ;显示数据 RET

M_ALAX1: DB \

32

M_ALAX2: DB \ TL: \TEMP_BJ1: LCALL WCOM MOV DPTR,#BJ2

;指针指到显示信息

MOV R1,#0 MOV R0,#2 BBJJ2: MOV A,R1 MOVC A,@A+DPTR LCALL WDATA INC R1

DJNZ R0,BBJJ2 RET

BJ2: DB 00H,\

;**************************

LCD

********************************** SHOW_DIG2H: MOV B,#100 DIV AB ADD A,#30H PUSH B MOV B,LCD_X LCALL LCDP2

33

POP B MOV A,#0AH XCH A,B DIV AB ADD A,#30H INC LCD_X PUSH B MOV B,LCD_X LCALL LCDP2 POP B INC LCD_X MOV A,B MOV B,LCD_X ADD A,#30H LCALL LCDP2 RET

SHOW_DIG2L: MOV B,#100 DIV AB MOV A,#0AH XCH A,B

34

DIV AB ADD A,#30H PUSH B MOV B,LCD_X LCALL LCDP2 POP B INC LCD_X MOV A,B MOV B,LCD_X ADD A,#30H LCALL LCDP2 RET

;************************ 显示区 BCD 码温度值刷新子程序 **********************

DISPBCD: MOV A,TEMPLC ANL A,#0FH

MOV 70H,A ;小数位 MOV A,TEMPLC SWAP A ANL A,#0FH

MOV 71H,A ;个位

35


(毕业设计)基于89C51和DS18B20的数字温度计设计(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:吉林省双辽市2017高考英语一轮复习阅读理解训练(三)2

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: