水温控制系统设计03学位论文Word文档下载推荐.docx
- 文档编号:14934456
- 上传时间:2022-10-26
- 格式:DOCX
- 页数:20
- 大小:172KB
水温控制系统设计03学位论文Word文档下载推荐.docx
《水温控制系统设计03学位论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《水温控制系统设计03学位论文Word文档下载推荐.docx(20页珍藏版)》请在冰豆网上搜索。
在控制部分,要求系统能够将水温调节到给定的温度,并进行保温。
题目并未规定温度调节的时间长短,但显然调节时间越短越好。
题目没有具体给出具体加热的器具和方式,因此选手必须自行选择和制作加热装置,然后才能真正进行电路制作。
在发挥部分,还要求提高温度系统的控制性能,缩短调节时间,提高控制精度,增加打印功能。
2.2水温控制系统总体框图
图2.1总体设计
3硬件电路设计
水温控制硬件电路图,如图3.1所示:
图3.1水温控制硬件电路图
4程序设计
4.1程序流程图
(1)主程序流程图
图4.1水温控制主程序流程图
(2)软件结构程序流程图
图4.2软件结构程序流程图
4.2程序代码
;
用于获取设置的温度值
TEMP_GETSHEQU10H
TEMP_GETSLEQU11H
用于在数码管上显示
TEMP_SETHHEQU12H
TEMP_SETLLEQU13H
用于存放实时温度值
A_BITEQU14H;
个位
B_BITEQU15H;
十位
按键输入引脚定义
K1EQUP2.0
K2EQUP2.1
控制状态引脚定义
DS1820EQUP3.7
FLAGEQU20H.1;
DS18B20是否存在标记
DQEQUP3.7
===========主程序===========
ORG0000H
JMPSTART
ORG03H
JMPEXT0
ORG0013H
JMPEXT1
START:
MOVA,#02H;
设置温度值为:
25
MOVDPTR,#TABLE3
MOVCA,@A+DPTR
MOVTEMP_SETHH,A
MOVA,#05H
MOVTEMP_SETLL,A
MOVIE,#10000101B
MOVIP,#00000001B
MOVTCON,#00000101B
MOVSP,#70H;
设置堆栈指针
MOVR7,#00H;
R7为按键K1次数记录
MOVR6,#00H;
R6为按键K2次数记录
============数码管显示子程序============
DISPLAY:
MOVP0,#0FFH
MOVA,TEMP_SETHH
MOVP0,A
MOVA,#00000001B
MOVP1,A
ACALLDELAY
ACALLTEMP_GETSHH1;
调用该子程序,以便保存设置温度值的十位数的值
MOVA,TEMP_SETLL
MOVA,#00000010B
ACALLTEMP_GETSLL1;
调用该子程序,以便保存设置温度值的个位数的值
MOVA,#0BFH
MOVA,#00000100B
MOVA,#00001000B
ACALLTEMP_DISPLAY;
调用实时温度显示子程序
JMPDISPLAY
============按键扫描子程序============
EXT0:
PUSHACC
PUSHPSW
INCR6
MOVA,R6
CJNEA,#10,DD1
MOVR6,#00H
DD1:
MOVDPTR,#TABLE1
;
ACALLDELAY
POPPSW
POPACC
RETI
EXT1:
PUSHACC
INCR7
MOVA,R7
CJNEA,#10,DD2
MOVR7,#00H
DD2:
MOVDPTR,#TABLE2
=========================
=========获取设置温度值的子程序=========
TEMP_GETSHH1:
PUSHACC
MOVA,TEMP_SETHH;
获取设置温度值的十位数
MOVP0,#0FFH
MOVTEMP_GETSH,A
MOVR0,#0FFH
TEMP1:
INCR0
MOVA,R0
MOVR1,TEMP_GETSH
CLRC
SUBBA,R1
JNZTEMP1
MOVTEMP_GETSH,R0
POPACC
RET
TEMP_GETSLL1:
MOVA,TEMP_SETLL;
获取设置温度值的个位数
MOVTEMP_GETSL,A
TEMP2:
MOVR1,TEMP_GETSL
JNZTEMP2
MOVTEMP_GETSL,R0
========================================
==========初始化及读取温度值子程序======
RE_TEMP:
SETBDQ
ACALLRESET_1820
JBFLAG,ST
ST:
MOVA,#0CCH
ACALLWRITE_1820
MOVA,#44H
MOVA,#0BEH
ACALLREAD_1820
==========DS18B20复位初始化子程序=======
RESET_1820:
NOP
CLRDQ
主机发出延时537us的复位低脉冲
MOVR1,#3
DLY:
MOVR0,#107
DJNZR0,$
DJNZR1,DLY
然后拉高数据线
等待DS18B20回应
MOVR0,#25H
T2:
JNBDQ,T3
DJNZR0,T2
JMPT4
置标志位FLAG=1,表示DS18B20存在
T3:
SETBFLAG
JMPT5
清标志位FLAG=0,表示DS18B20不存在
T4:
CLRFLAG
JMPT7
时序要求延时一段时间
T5:
MOVR0,#117
T6:
DJNZR0,T6
T7:
===========写入DS1820子程序=============
写入DS1820
WRITE_1820:
MOVR2,#8;
一共8位数据
CLRC;
C=0
WR1:
CLRDQ;
总线低位,开始写入
MOVR3,#7
DJNZR3,$;
保持16us以上
RRCA;
把字节DATA分成8位,环移给C
MOVDQ,C;
写入一个位
MOVR3,#23
等待
SETBDQ;
重新释放总线
DJNZR2,WR1;
写入下一个位
释放总线
===========读出DS1820子程序=============
将温度值从DS18B20中读出
READ_1820:
MOVR4,#2;
读取两个字节的数据
MOVR1,#29H;
低位存入TEMP_GETCL,高位存入TEMP_GETCH
RE0:
数据一共8位
RE1:
读前总线保持为低
开始读总线释放
MOVR3,#9;
延时18us
DJNZR3,$
MOVC,DQ;
从总线读到一个位
M
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 水温 控制系统 设计 03 学位 论文