《基于51单片机的智能热水器控制系统..doc》由会员分享,可在线阅读,更多相关《基于51单片机的智能热水器控制系统..doc(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、- .目录摘要IABSTRACTII引言11 智能热水器控制系统的总体设计方案11.1 方案的分析与选择11.2 系统总体设计概述21.3 各功能模块介绍31.3.1 控制模块31.3.2 显示模块31.3.3 输入模块51.3.4 其它模块61.4 本章小结82 硬件电路的设计与实现82.1 单片机最小系统硬件电路设计82.2 显示模块硬件电路设计82.3 温度传感器DS18B20电路设计92.4 电子式水位开关硬件电路设计102.5时钟芯片电路设计102.6声光报警电路设计112.7按键设置模块电路设计112.8电源和开关模块设计122.9本章小结123 热水器控制系统的软件设计与算法实现
2、123.1 软件总体流程图133.2 显示模块程序设计143.2.1 写命令子函数143.2.2 写数据子函数143.3 温度传感器模块程序设计153.4 时钟芯片相关程序设计163.5 按键设置程序设计163.6 主程序和中断效劳程序设计173.7本章小结174 测试、总结与评价174.1 软件平台仿真测试174.2 面包板电路搭建测试184.3 系统方案总结与评价195 完毕语19参考文献20致21. word.zl.- .基于51单片机的智能热水器控制系统摘 要随着科技的进步和人们生活水平的不断提高,热水器越来越普遍地走进千家万户,给人们的生活带来了极大的方便。同时,人们对热水器的智能化
3、和平安性都提出了更高的要求。这就要求热水器具有一个智能控制系统,能够自动获取当前水温和水位信息,判断实际温度与预设温度关系,从而实现加热的自动控制。本文提出了一种基于51单片机的智能热水器控制系统的解决方案,该方案采用DS18B20单线数字温度传感器来对水温进展检测,使用DS1302时钟芯片实现计数和定时功能,同时参加了水位判断和报警设计。用户通过按键和显示屏来完成系统的参数设置,从而实现定时加热、自动恒温等功能。关键词:单片机,热水器,控制,DS18B20. word.zl.- .The intelligent water heater control system based on 51
4、single chip microputerAbstractWith the progress of science and technology and the continuous improvement of peoples living standard, the water heater is more and more widely into the thousands, has brought great convenience to peoples life.At the same time, people also hope that the water heater is
5、not just simply by switch or button mands, to heat water, also can according to the people set the temperature of the automatic constant temperature, timing, heating, automatic judgment function such as water level, the water heater of intelligence and security are put forward higher requirements.Th
6、is requires a water heater has a intelligent control system, can automatically access to current information, water temperature and water level determine the actual temperature and the preset temperature relations, so as to realize the automatic control of heating.This paper puts forward a kind of i
7、ntelligent water heater control system based on 51 single chip solution, the scheme adopts DS18B20 single line digital temperature sensor to test the water temperature, using DS1302 clock chip realize counting and timing functions, at the same time joined the water judgment and alarm design.The user
8、 through the buttons and screen to plete the system parameter setting, so as to realize the function such as timing, automatic constant temperature heating.Key Words:single chip microputer, water heater, control, DS18B20. word.zl.- .引言随着人们对生活质量的要求不断提高,热水器逐渐成为了城市居民生活的一个不可或缺的东西。经过多年的开展和技术积累,整个热水器行业也不断
9、涌现出新的产品,热水器的种类也越来越多,从最初的燃气热水器一家独大,到现在的燃气热水器、电热水器、太阳能热水器等多种热水器都有一定的市场占有率。在热水器的使用效果上,功能也越来越丰富,使用更加人性化,甚至结合最新的智能家居和物联网理念,智能化程度大大提高,给人们的生活带来了极大的方便。现在的热水器向着平安、节能、稳定、高效、人性化的方向快速开展着。单片机是一种微控制器,体积小、功耗低、通过编程和外围电路设计,可以完成多种智能控制任务。随着单片机技术的迅速开展,越来越多的家用电器采用各种型号的单片机为控制核心,来完成和人类的交互,并通过相应的程序和部运算,实现一些智能化的控制,使家用电器的操作更
10、加人性化,控制更加智能化。在热水器中,也广泛采用了单片机作为控制核心,通过相应的温度传感器,在热水器的温度控制上到达了更高的精度,完成了从最初的旋钮调节逐渐向数字化调节方向转变。同时,通过不同的传感器,由单片机控制并指示热水器的各种工作状态,在发生缺水、水温过热等情况时及时向用户给出声光报警,从而防止发生意外,保障了用户的平安。本文所提出的智能热水器控制系统,以51系列单片机为控制核心,通过温度传感器、水位传感器感知热水器状态,并通过按键、显示屏和用户进展人机交互,实现了定时加热、自动恒温的功能,同时也有过热、缺水的报警设计,给用户带来方便。本设计具有本钱低、实用性强、温度控制精度高的特点。1
11、智能热水器控制系统的总体设计方案本设计所提到的智能热水器控制系统主要是实现对温度的自动控制、定时加热控制和智能报警的功能,因此,智能热水器控制系统主要分为控制模块、显示模块、信息输入模块、加热模块、声光报警模块等几局部构成。1.1方案的分析与选择对于主控芯片,本方案选择最简单的8位51系列的单片机,性能可靠,本钱低,完全可以满足本系统的要求。而且由于51系列的单片机在电子相关专业中的根底性地位,对其使用和编程都比拟熟练,可以极大缩短开发周期,更好地完成设计任务。对于显示模块,LED液晶显示屏、LCD1602字符型液晶、LCD12864点阵型液晶三者都是简单的、小型的显示器件,均可完成显示任务。
12、LED液晶显示的容过于简单,LCD1284更适合显示图像类信息,而LCD1602非常适合显示少量的、丰富的字符信息。因此,选择LCD1602字符型液晶。对于输入模块,分为用户信息输入和传感器信息输入。用户信息输入方面,使用按键进展输入要比旋钮更容易控制,用户也更易于承受,通过设置相应的调节按键,可以十分准确地定位到用户所希望到达的温度。当然,按键也有机械按键、电容按键等许多不同的种类,因为本系统处于实验调试阶段,应选取最简单的机械按键。传感器信息输入分为两个局部,第一局部是温度信息输入,使用温度传感器,用于告诉单片机当前的水温,实现温度的自动控制;第二局部是水位信息输入,使用水位传感器,用来告
13、诉单片机水量信息,到达缺水报警的目的。温度传感器一般有热敏电阻和数字式温度传感器DS18B20可供选择。热敏电阻的可靠性差,且输出的是模拟量,需要进展相应的A/D转换后才能输入,比拟麻烦,而相比之下,数字式温度传感器测温围宽、以单线串行方式与单片机进展通信,节约了单片机的I/O口资源,且直接输出数字量,外围电路简单,因此最符合要求。水位信息输入只需考虑是否是缺水状态,因此只要对是否缺水给出一个电平信息即可,直接封装一个断触电点,一端接地,当有水时,单片机对应端口被拉低,无水时端口电平被拉高,来完成是否缺水的判断即可。同时,为了实现准确的定时加热功能,引入专门的时钟芯片DS1302进展计时,为单
14、片机提供日期和时间基准。为了保证使用者的平安,参加声光报警提示模块,在加热、缺水时给出提示。1.2系统总体设计概述本系统采用51系列单片机为控制核心,以DS18B20单线数字式温度传感器获取温度信息,采用DS1302时钟芯片为单片机提供日期基准,显示方面采用LCD1602液晶显示屏,以机械按键的形式供用户输入,设置当前的系统时间、定时加热的开场时间、水温设定等,来完成整个控制器的控制工作。系统整体的构造框图如下列图1.1所示。5V电源模块1602显示单片机及其最小系统及电源接口温度传感器模块水位传感器模块声光报警模块按键输入时钟电路图1.1 系统整体框图1.3 各功能模块介绍要顺利完成整个系统
15、的设计工作,就要对所采用的各个模块的元器件进展具体的选型,并通过元器件的数据手册、操作说明的资料,详细地了解各个元器件的性能、操作方法、硬件连接要求的容。1.3.1控制模块本设计采用的主控芯是51系列的单片机处理器STC89C52RC,这是一款采用了CMOS工艺进展生产的8位处理器,该处理器具有相当可靠的工作性能,正常工作的功耗极低,而且有着相当丰富的系统资源,片的程序存储空间到达了4K、具有512字节的RAM空间,可以满足大多数的程序要求。指令系统完全兼容传统的8051单片机核,有2K+的EEPROM存储空间。要建立完整的控制模块,还要为单片机配置其最小系统的外围电路,主要包括晶振和复位电路
16、,单片机才能正常的工作。1.3.2显示模块本设计所采用的LCD1602液晶显示屏,是一种小型的、集成度很高的液晶显示屏,可以显示字母、数字、符号等,其特点是功耗低、体积小、轻薄、模块化,而且由于其自带字符库,在显示方面的实现上只需要按照要求对其进展初始化、设定相关的显示位置和显示容即可,操作简单。作为一个集成化的显示模块,其相应的管脚的具体定义可以查阅操作手册获取,而与单片机的具体连接方式将在硬件设计局部详细介绍。如下列图1.2所示为LCD1602的控制器接口的时序说明,在液晶的初始化、读写操作的相关的编程中,要参考该时序图,结合单片机晶振的选取情况作出必要调整,只有正确的时序才能保证单片机给
17、出正确的控制指令。图1.2 字符型液晶LCD1602的读写操作时序图LCD1602自带字符库,这就在很大程度上方便了用户的开发,同时也节省了单片机的程序存储空间,不需要在程序中对字符的显示进展定义。如下列图1.3所示。图1.3 字符型液晶LCD1602的字符库1.3.3输入模块对于单片机而言,要对其进展一定是设置,就必须要有用户进展相关的指令输入,单片机要对热水器的热水温度状态和是否缺水进展感知,要有相关的传感器进展信号输入。输入模块分别为用户指令输入、温度数据输入和是否缺水的信号输入。指令输入由4个独立按键完成,温度输入由DS18B20来完成,是否缺水的信号由电子式水位开关提供。指令输入模块
18、采用4个独立按键完成。独立按键的触发方式为低电平有效,在平时的系统开启状态下,单片机相应端口保持高电平状态,当按键被按下,独立按键两端连通,然后接地,单片机的相应的连接端口的电平被地线拉低,从而能够被单片机捕捉到按键动作。4个独立按键分别是设定键、键值增加、键值减小、确认这个4个功能定义,通过这4个按键,结合软件和算法编程,进展按键状态扫描,然后对相应的键值动作设定正确的响应逻辑,就能够为用户提供完整的参数设置功能。温度输入模块主要采用的是一种数字式集成单线温度传感器,型号为DS18B20。图1.4 数字式单线温度传感器DS18B20封装及引脚图在DS18B20的芯片手册中,阅读单线传输协议的
19、时序要求,如下列图1.5所示。图1.5DS18B20的读写操作时序水位信号输入选择电子式水位开关BZ2401,供电电压围在5V-24V,有三根线,电源线、地线和信号线。该产品通过置芯片检测水位信号,由部芯片处理,当判断到有水时,芯片输出与电源电压一样的高电平,当判断到无水时,芯片输出0V,产品正常供电后,与单片机通过数据线和地线连接。1.3.4其它模块为了实现准确的定时功能,本系统采用了专门的时钟芯片DS1302,来提供详细的日期和时间基准。同时,设置3个LED灯和蜂鸣器,组成其声光提示和报警模块。DS1302是一款涓流充电时钟保持芯片,由DALLAS公司出品,可以通过简单的串口同单片机进展通
20、信,芯片部有自己的独立时钟电路和一个31字节的静态RAM,能够向单片机提供详细的时钟信息,如日期年月日,时间时分秒等,对于每月的天数和闰年能够自动进展处理,保证日期记录的准确性。在硬件连接上,其使用三个数据线同单片机的相应端口进展连接,分别为复位、数据和串行时钟。其芯片正常工作的功率极低,在日期时间数据的保持和记录时消耗的功率缺乏1mW。其封装形式和管脚定义如下列图1.6所示。图1.6DS1302的封装和管脚定义在使用时,该芯片要外接32.768KHz的晶振,需要简单的外围电路。如下列图1.7所示为其一种典型的应用电路。图1.7 一种典型的DS1302应用电路图声光报警模块所采用的LED灯和小
21、型的蜂鸣器就比拟常见,电路特性也很容易掌握,在LED灯的使用时,要注意选择适宜的颜色,同时要根据最大电流限制,加上适宜的限流电阻,从而保护LED灯工作在正常的电压电流条件下。蜂鸣器的驱动无法靠单片机的端口直接完成,要使用相应型号的三极管进展放大,如9012、8550等型号,通过三极管驱动蜂鸣器,才能正常发声。1.4 本章小结本章对系统的总体方案进展了设计,同时详细确定了系统所应该具有的功能模块,对控制模块、显示模块、输入模块等模块的主要实现方案和元器件的选择方案进展了分析与比拟,从而确定了系统所需要使用的各个元器件。同时,根据元器件的资料和数据手册,对主要元器件的硬件连接、使用和操作方法进展了
22、重点研究,为硬件电路的搭建和软件编程提供了根底。2 硬件电路的设计与实现2.1单片机最小系统硬件电路设计单片机最小系统包括晶振、复位电路等。单片机部已经具有时钟震荡电路,因此,我们搭建单片机最小系统,只需要在其XTAL1和XTAL2两个引脚之间参加反应电路,就可以让单片机得到时钟信号。一般的反应电路就是石英晶体振荡器和两个30uf的旁路电容,电容值的大小是根据其晶振频率上下进展调整的。在单片机的最小系统的电路中,石英晶体振荡器的频率越高,单片机部时钟信号的周期就越短,单片机的指令执行速度就越快。本设计中在单片机时钟频率的设置方面采用12MHz,同时对单片机的复位引脚设置相应的复位按键,以供用户
23、在必要的时候对单片机进展重启操作。对于本系统的各个传感器接口,也要进展引出,以供各个传感器、电源、数据线接口使用。最小系统可以在万用板上手工搭建,也可以直接使用PCB板上焊接好的成品模块,其硬件原理图如下列图2.1所示。图2.1 单片机最小系统及其接口电路设计2.2显示模块硬件电路设计本设计选用字符型液晶LCD1602为显示器件,将LCD1602的数据引脚都接入单片机的P0端口,即P0.0P0.7分别对应地和1602显示屏的8根数据线DB0DB7相连接。如图2.2所示,特殊功能端RS、RW、E通过网络标号,分别接P1.0,P1.1和P1.2。模块的VEE端可以调节显示模块显示字符的亮度和比照度
24、,在实际电路中采用10K欧姆蓝白卧式可调电阻102,通过拧动,可以改变显示字符的效果。图2.2 显示模块及其接口电路设计2.3 温度传感器DS18B20电路设计DS18B20温度传感器与单片机的连接比拟简单,直接将其数据线连接到单片机的P2.1端口上,即网络标号DQ,电源和地线也连接到单片机主板上,同时数据线用电源电压通过4.7K的电阻上拉。图2.3 温度传感器及其接口电路设计2.4 电子式水位开关硬件电路设计缺水判断由电子式水位开关完成,有水时输出高电平,无水时输出低电平。高电平等于电源电压,因此其供电选择为5V,数据线和地线接入单片机主板,如下列图2.4所示,网络标号WATER对应单片机的
25、P2.2端口。图2.4 电子式水位开关接口电路设计2.5 时钟芯片电路设计时钟芯片DS1302的RST、SCLK和I/O三个端口与单片机相连,进展数据交换,如下列图2.5所示,网络标号分别为RST、SCK和IO,分别与单片机的P3.7、P3.5和P3.6相连,实现与单片机的通信。通过参考DS1302时钟芯片的经典电路设计方案,设计本系统所需要电路构造。DS1302具有涓流充电功能,可以设置双电源,其中VCC1为备用电源,在电路中另外引出,接一块型号为CR2302的纽扣电池。VCC2在主板上直接取电。在X1和X2两个引脚之间接入32.768KHz的晶振,为芯片提供根本时钟信号。图2.5 时钟芯片
26、电路设计2.6声光报警电路设计报警电路分为灯光报警和声音报警,用于对系统的各种需要报警的状态进展响应,并通过声音和灯光对用户进展提示。如下列图2.6所示为声音报警模块电路设计,蜂鸣器使用与单片机一样的+5V电源,使用三极管9013进展控制,集电极接单片机端口,网络标号为BEEP对应单片机的P2.0端口。图2.6 蜂鸣器电路设计灯光报警和提示选用高亮度高寿命的LED灯,共阳极接法,单片机给出低电平点亮。设置3个LED灯,串接510欧姆电阻,D1用于指示加热状态;D2用来指示水位状态;D3用来指示温度过热状态。这三个灯分别接单片机的端口P2.5、P2.4和P2.3来完成相关的功能。图2.7 指示灯
27、电路设计2.7 按键设置模块电路设计本系统的时钟设置、温度设置都需要通过按键来完成,采用4个独立按键的设计,一端接地,按下后将单片机的端口电平拉低,由单片机完成按键动作的捕捉。功能定义为设置键、确定键、值增加键和值减小键,网络标号分别为SELT、ENTER、UP和DOWN,对应接单片机的P1.3、P1.4、P1.5和P1.6四个端口。图2.8 按键模块电路设计2.8电源和开关模块设计本系统的外接+5V电源工作,为了控制方便,参加电源总开关,同时使用一个LED灯指示电源状态。在电源与地线之间并联两个滤波电容,滤除电源纹波。图2.9 电源模块电路设计2.9 本章小结本章主要在PROTEL99SE的
28、软件环境下完成了电路硬件原理图的设计,通过对主要元器件电气特性的研究,合理、规、平安地构建了系统功能实现的硬件平台。3热水器控制系统的软件设计与算法实现软件设计是整个系统的灵魂,优秀、可靠的软件设计能够充分发挥硬件的资源,并能够出色完成系统的预期功能。软件系统主要的设计思路如下:1、在系统翻开后,显示当前的系统时间信息和水温信息,如果水温低于设定值那么开场加热;如果水温高于设定值或状态为缺水就进展声光报警。2、响应按键操作。当用户按下设置键时,进入功能选择菜单,功能选择菜单有三个,第一个是设置时间,第二个是设置定时加热开场的时间和完毕的时间,第三个是设置温度围的上限和下限。在软件程序的设计中,
29、充分表达了模块化的设计思想,整个软件系统主要包括了整体初始化函数、LCD1602根底函数、DS18B20根底函数、DS1302根底函数、按键扫描设置策略根底函数几个大的局部,然后在主程序中进展相关模块的函数调用,如传感器状态读取、温度智能判断、报警处理策略、键盘扫描等,完成系统所预期的操作功能。3.1软件总体流程图开场LCD显示屏、1302时钟芯片、定时器、独立按键、温度传感器、各种端口初始化正常模式?调用时间显示函数0.5s时间到?调用温度读取函数温度显示函数调用报警模块函数调用按键扫描函数NNYY图3.1 软件系统总体流程图3.2显示模块程序设计显示模块程序主要包括初始化、写命令子函数、写
30、数据子函数都是其重要的根底功能函数,因此都要在软件系统程序设计的底层库中进展包含。LCD设置参数及端口定义sbit rs=P10; /LCD1602sbit rw=P11; /LCD1602sbit e=P12; /LCD16023.2.1写命令子函数1602的操作需要对其进展命令输入,它有自己的指令库。而对于这些命令的写入,需要编写特定的写命令子函数。void write_(uchar ) /写指令函数rw=0;delay1(5);rs=0;delay1(5);e=1;delay1(5);P0=;delay1(5);e=0;delay1(5);其中delay1为编写的延时函数,如下所示:vo
31、id delay1(uint z) /延时函数uint x,y;for(x=z;x0;x-)for(y=10;y0;y-);3.2.2写数据子函数对命令进展写入之后,紧接着就要进展所要显示的字符数据的输入,通过写数据子函数来完成。void write_dat(uchar dat) rs=1;/选择写数据 rw=0; P0=dat; e=1; delay(5);/无延时不能正常工作 e=0;根据以上两个根本函数,来编写1602的初始化函数、显示字符串函数、显示两位十进制数字函数,完成在时间设定、温度设定的过程中进展的各种显示,如以下为时间显示局部的程序代码。void Time_Display(v
32、oid)read_rtc();Date_dispaly(0x80+0x40+12,time_data6); /显示秒Date_dispaly(0x80+0x40+9,time_data5); /显示分Date_dispaly(0x80+0x40+6,time_data4); /显示时Date_dispaly(0x80+14,time_data3); /显示日Date_dispaly(0x80+11,time_data2); /显示月Week_dispaly(0x80+0x40+15,time_data1); /显示周Date_dispaly(0x80+8,time_data0); /显示年 /
33、Year/10*16+Year%10Hour=time_data4/16*10+time_data4%16;Minute=time_data5/16*10+time_data5%16;Second=time_data6/16*10+time_data6%16;除此之外,还要编写在进展时间设定过程中和在温度设定过程中要显示的容,结合用户的输入,设置适宜的光标显示处理。3.3温度传感器模块程序设计温度传感器的端口定义在P2.1端口。sbit DQ = P21;在温度传感器的根底函数设计里边,主要是进展温度获取和处理,读取温度的函数包括读整数局部和读小数局部,通过对DS18B20的数据格式进展解析,
34、编写适宜的读取温度子函数。主要根底函数设计包括模块初始化函数、单线串行传输协议延时函数、总线协议配置、字节数据发送、字节数据接收等多个局部。在主程序中对这些函数进展调用,配合LCD显示函数,来完成对温度显示、判断等多种功能。3.4时钟芯片相关程序设计时钟芯片的数据传输定义在单片机的P3.5、P3.6和P3.7这三个端口。sbit sck=P35; /时钟端口sbit io=P36; /时钟端口sbit rst=P37; /时钟端口在DS1302相关的程序设计中,主要就是对芯片的写入数据和读取数据的函数进展编写,然后再编写相应的日期设定函数。使用write_ds1302_byt函数进展数据准备工
35、作,使用write_ds1302函数对数据进展写入,使用read_ds1302函数对时间数据进展读出,使用set_rtc函数对时间进展设置。3.5 按键设置程序设计按键设置程序主要是按键扫描策略,因为按键扫描和定义逻辑比拟复杂,不仅要识别按下按键的次数、哪个按键,还要配合LCD显示函数,对不同的键值和状态进展显示,并通过控制LCD1602的光标位置与开闭,提示用户进展设置。按键扫描和设置程序单独做成一个子函数,在主程序中循环调用。在进展按键编程操作中,因为使用的是机械按键,会存在抖动的现象,造成检测不准确或按下次数误判,一般采用软件去抖的方式,即通过延时的方式,保证单片机读取到的键值的准确性。
36、按键定义为4个,分别是设置键、确认键、键值增加和键值减小。使用变量SELT表示设置键状态,同时设定一个全局变量Select_num记录设置键被按下的次数,不同的次数就对应着不同的设置功能,根据按键功能设定,设置键按下的次数为1时,光标指向设置时间功能,同时标记进入调节模式;当按下次数为2时,光标指向设置定时功能;当按下次数为3时,光标指向设置温度功能;当按下次数为4时,取消标记调节模式,并回到正常模式。使用变量ENTER表示确认键的状态,同时使用Enter_num记录该键被按下的次数。对于Enter_num的每一个取值,都要首先检查变量Select_num的值,来判断处于哪有功能设定的模式下,
37、进而显示不同的容,并控制光标的移动。并根据不同功能模式下按下确认键的次数,判断系统当前要修改的数据是哪一个,该不该完毕调试,返回正常状态。通过设置键和确认键按下次数的排列组合,构建了系统在调试模式下的每一个具体的调试状态,也就是说Select_num和Enter_num值的组合就确定了当前调整的数据。对于键值增加和键值减小的按键,当这两个按键按下时,使用if条件判断Select_num和Enter_num值的组合情况,执行相应的数据增加1或者是数据减小1的操作。由于键盘检测循环进展,连续按增加或减小按键可以起到连续调节的效果。同时,注意每一个数据的围,防止设置超出围。3.6 主程序和中断效劳程
38、序设计主程序中主要包含各个功能函数的调用。在程序运行开场,对各个模块、端口和定时器初始化操作,然后进入循环构造。循环构造过标志位判断系统处于调节模式还是正常模式,并不断执行键盘扫描函数。正常模式下执行温度显示和时间显示,调用报警模块的子函数,进展温度、水位状态的检测和判断。在程序中设置了相应的判断标志位,通过这些变量值的判断来确定是否到达报警条件。水温低于设定温度那么开启加热指示灯,高于设定温度那么报警,如果缺水的话,也进展报警。中断效劳程序主要使用了定时器中断,使用定时器T0定时50ms,并在其中断效劳程序中进展计数,为系统的正常模式下的显示数据更新提供时间基准。3.7 本章小结本章主要对系
39、统的软件系统和算法进展了设计,对各个模块的根底函数进展了编写,保证模块的正常工作和数据传输。尤其对按键扫描模块进展了详细的逻辑分析和操作设计,保证按键操作的准确性。4 测试、总结与评价4.1软件平台仿真测试本系统使用了Proteus软件进展仿真和测试,该平台能够完全模拟单片机的实际电路连接原理和程序设置,同时需要完整的程序代码才能最终完成仿真测试,看到系统的运行效果。该仿真平台能够及早发现硬件电路连接和程序的问题,如下列图4.1和4.2为仿真截图。图4.1 仿真平台搭建和正常模式图4.2 设置键仿真操作通过测试,在仿真环境下,系统正常模式下显示正常,而且能够相应操作按键的各种操作,完成各种参数
40、调节和设置。对于报警状态也能够正常响应。4.2面包板电路搭建测试除了进展软件仿真,本系统也使用面包板和各种元器件,搭建出了实物系统,并进展了上电测试,如下列图4.3所示。图4.3 面包板搭建实物系统测试4.3 系统方案总结与评价通过方案分析和确定、元器件选择、硬件平台搭建和软件系统设计,本热水器控制器系统根本完成了所预期的定时加热、自动恒温控制、智能报警的功能,但也存在一些问题与缺乏。本设计主要对热水器控制器进展了详细的设计,但控制功能依然是半自动化的程度,如温度过高报警,但没有主动其切断加热电源;缺水状态下不能自动上水。在后续的功能完善中,要逐步参加继电器控制加热模块、电磁阀进水模块,到达全
41、自动的控制。5完毕语通过这次毕业设计,我学到了很多东西,如温度传感器、1602、1302的使用方法,在软件编程和硬件电路设计方面的能力得到进一步的提高。本系统通过最初的设想、功能需求设计到最终的软件仿真和实物,进展了许屡次的调试,才完成了这个毕业设计。这一过程中不仅收获了知识,也收获了快乐。单片机热水器控制系统具有较低的本钱、较高的控制精度、在可靠性和智能化方面也有相当大的优势,相信在热水器智能控制方面,会有更大的开展。. word.zl.- .参考文献1 汪铭东,梅广辉.基于单片机与DS18B20的机柜温度控制器设计J.现代电子技术,2021,3712:810.2 华成英,童诗白.模拟电子技
42、术根底第四版M,:高等教育,2006.3 顾涵.基于51单片机的小型温度采集系统设计D.常熟:常熟理工学院,2021.4 邓奕、马双宝、龙汉,PROTEL 99 SE原理图与PCB设计M,:人民邮电,2021.5 华,MCS-51系列单片机实用接口技术M,:航空航天大学,1993.6 吴建平,传感器原理及应用M,:机械工业,2021.7 康华光.电子技术根底数字局部M.:高等教育,2021. word.zl.- .致 本论文是在xxx教师的悉心指导下完成的,XXX教师严谨认真的学术态度让我受益匪浅,感教师的指导,我才能顺利完成毕业设计课题。同时,也感在做毕业设计期间给我提供过帮助的同学们。.