基于单片机的温度控制系统设计报告 联系客服

发布时间 : 星期二 文章基于单片机的温度控制系统设计报告更新完毕开始阅读e9c9f10ffc4733687e21af45b307e87100f6f847

ACALL WR_1820 ACALL RESET MOV A,#0CCH ACALL WR_1820 MOV A,#0BEH ACALL WR_1820 ACALL READ_1820 RET

;=========把高温和低温限值写入寄存器=================

WR_THL: JB FLAG,WR_HL

;==========把高温和低温限值写入EEPROM=================

WR_PROM:ACALL RESET

;========把EEPROM的值返回到高温和低温限值寄存器======== RE_PROM:

ACALL RESET MOV A,#0CCH ACALL WR_1820 MOV A,#0CCH ACALL WR_1820 MOV A,#48H ACALL WR_1820 RET RET MOV A,#0CCH ACALL WR_1820 MOV A,#4EH ACALL WR_1820 MOV A,TEMP_TH ACALL WR_1820 MOV A,TEMP_TL ACALL WR_1820 RET

WR_HL: ACALL RESET

MOV A,#0B8H ACALL WR_1820 RET

;===========初始化1820================================== RESET: SETB DQ

FLAG1: SETB NDQ:

;=============1820写字节======================== WR_1820:

MOV R6,#8 CLR C

CLR FLAG

DQ

ACALL ERROR RET MOV R5,#100 DJNZ SETB DJNZ

R5,$ DQ R5,$

FLAG

SETB NOP

MOV R5,#25H DJNZ JMP NDQ

R5,RESET1 DQ

NOP CLR DQ MOV R5,#250 DJNZ

R5,$

RESET1: JNB DQ,FLAG1

MOV R5,#100 JMP RETU

RETU: SETB

CLR DQ

R5,$

MOV R5,#7 DJNZ RRC A MOV DQ,C MOV R5,#25 DJNZ SETB NOP NOP DJNZ SETB RET

R6,WR1 DQ R5,$ DQ

WR1:

;==============读取1820数据====================== READ_1820:

MOV R2,#4 MOV R1,#TEMPL

MOV R6,#8 SETB

DQ

RE1: RE2:

NOP

CLR DQ CLR C NOP NOP SETB DJNZ

DQ R5,$

MOV R5,#9

MOV C,DQ MOV R5,#24 DJNZ RRC A DJNZ

R6,RE2 R5,$

MOV @R1,A DEC R1 DJNZ RET

R2,RE1

;===========转换数据=============================

TURN: MOV XIAOSHU,TEMPL ;保存TEMPL值,后面用于取低4位转换小数部分 KEYSCAN:

JB K1,RETUN JNB K1,$ ACALL CLR_LCD ACALL DISP_THL ACALL SET_HL ACALL WR_THL /ACALL LED ACALL WR_PROM

;限值复制到EEPROM中 ;清屏

;显示高温限值和低温限值 ;设定限值

;把高温限值和低温限值写入RAM ;按下K1,进入键盘扫描

ACALL DELAY20 RET

;========键盘扫描=============================

MOV A,TEMPL MOV C,16 RRC A MOV C,17 RRC A MOV C,18 RRC A MOV C,19 RRC A MOV TEMP,A MOV A,XIAOSHU ANL A,#00001111B MOV XIAOSHU,A

;22H的位寻址

RETUN: RET

;------------设定高低限值----------------------