关于数字温度传感器,显示器的初始化程序直接调用,本文主要是模块化设计,程序设计简单,硬件电路较为合理。如图14所示。
图14 主程序框图
4. 系统仿真与调试
4.1 Protues 和 Keil的联合调试
用Protues新建一个工程,选择新建文件,把要找的元器件放在上面,然后依据原理画出电路图。画完后进行电器规则检查,无误后就可以进行保存。
Protues产品包含了革新的VSM技术,用户可以对基于微处理器设计连接的元器件一起仿真,可以根据键盘、显示器等动态模型对外设进行交互仿真[11,12]。利用Keil可以仿真程序,然后将编译的程序下载到单片机中进行仿真。在程序调试中主要有两种需要调试,按键调试和LED显示调试。按键调试时,应先按下确认键,然后再按加减键否则液晶不能正常显示温度。在指示灯调试时,由于LED灯亮度不够,经过观察发现用单片机输出为1时驱动负载太弱,所以应改用低电平触发,外接上拉电阻就可以正常驱动LED灯了。
4.2 系统仿真
如图15所示:第一屏显示的是当前温度,第二、三屏分别显示报警温度、设定温度。第一行分别是temperrature()、high temp、set temp。第二行显示的都是当前检测的温度。当水温小于设定温度时,电加热模块就开始运行加热水温,直到温度达到设定值,若水温高于65℃时,则蜂鸣器开始报警,并且电加热停止。
图15 仿真图
图16 仿真图
当前温度假设45℃,通过按键设定为50℃,这时就会加热(LED黄灯就亮了代表加热模块)。仿真图如图16所示。
报警温度也用LCD1602显示,当水温大于65℃时,蜂鸣器会一直响(用LED灯亮表示),这时加热模块D1停止工作。仿真图如图17所示。
图17 总体仿真图
以上所示结果:基于AT89S52单片机设计的智能温度控制系统,经过调试后,基本满足设计要求。
5. 结束语
本文采用AT89S52为控制核心的智能热水器控制系统,经设计完成后可以满足要求。首先由数字温度传感器DS18B20采集温度后,经单片机处理,送入液晶显示LCD1602显示。其中检测的温度精度为1 ºC。单片机根据当前的温度值来控制加热、报警等。当按键设定的温度值大于当前检测水温时,单片机就控制加热输出,使之温度上升,加热到设定值。当前温度大于设定值,则不做处理,热水器自动冷却降温,如果水温高于65 ºC时,停止加热,蜂鸣器报警。温度预设值为45ºC,通过按键可调。设计还有不完善的地方,比如附加定时功能、水位监测等,有待进一步改进和完善。
- 上一篇:AT89S52单片机的自学习红外遥控器设计+源代码+电路图
- 下一篇:PLC即时车流量控制系统设计+梯形图
-
-
-
-
-
-
-
河岸冲刷和泥沙淤积的监测国内外研究现状
酸性水汽提装置总汽提塔设计+CAD图纸
十二层带中心支撑钢结构...
乳业同业并购式全产业链...
大众媒体对公共政策制定的影响
电站锅炉暖风器设计任务书
中考体育项目与体育教学合理结合的研究
当代大学生慈善意识研究+文献综述
杂拟谷盗体内共生菌沃尔...
java+mysql车辆管理系统的设计+源代码