基于单片机的全开电水热水器的设计_第1页
基于单片机的全开电水热水器的设计_第2页
基于单片机的全开电水热水器的设计_第3页
基于单片机的全开电水热水器的设计_第4页
基于单片机的全开电水热水器的设计_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

沈阳理工大学毕业设计(论文)题目基于单片机的全开电水热水器的设计系别信息与工程学院专业测控技术与仪器学生姓名闫圣坤指导教师耿欣2011年06月15日摘要热水器是日常生活中的常用电器,此次课题的研究对象为一种新型的电热水器,与太阳能热水器相比,它功能强,成本低,是普通家庭的实用产品。本设计研制了一个智能化的热水器系统,它在以往设计的热水器的基础上增加了微型单片机控制芯片,并且能够实现温度控制与显示、水位控制与显示功能,并可以调整温度上下限与水位下限,采用电位器与DS18B20来分别实现对水位与温度的采集,采用STC12C5A60S2实现对数据的分析与处理,系统完整功能完善,是新一代智能产品。本文根据设计要求,介绍了总体设计方案、系统硬件与系统软件,重点介绍了系统功能模块设计的详细思路和实现方法,以及对系统关键技术详细说明,实现了单片机控制下的简单要求与实现过程,从科学、实用的角度实现了系统功能。关键词单片机;水位控制;温度控制;智能化ABSTRACTWATERHEATERISUSEDINDAILYLIFE,THISTOPICRESEARCHELECTRICOBJECTFORANEWTYPEOFELECTRICWATERHEATER,COMPAREDWITHSOLARENERGYWATERHEATER,ITSTRONGFUNCTION,LOWCOST,ISORDINARYFAMILYPRACTICALPRODUCTSTHEDESIGNOFTHEWATERHEATERDEVELOPEDANINTELLIGENTDESIGNSYSTEM,WHICHISINTHEPASTONTHEBASISOFTHEWATERHEATERINCREASEDMINIATURESINGLECHIPMICROCOMPUTERCONTROLCHIP,ANDCANREALIZETEMPERATURECONTROLANDDISPLAY,WATERLEVELCONTROLANDDISPLAY,ANDCANADJUSTTHETEMPERATUREUPPERLIMIT,WITHWATERLEVELBYPOTENTIOMETERANDDS18B20TOREALIZEDRESPECTIVELYWITHTHECOLLECTIONOFTEMPERATUREOFWATERLEVEL,THESTC12C5A60S2MAKETHEDATAANALYSISANDPROCESSING,THESYSTEMISCOMPLETEWITHPERFECTFUNCTIONS,ANEWGENERATIONOFINTELLIGENTPRODUCTSBASEDONTHEDESIGNREQUIREMENTS,DESCRIBESTHEOVERALLDESIGN,SYSTEMHARDWAREANDSYSTEMSOFTWARE,FOCUSINGONTHEDETAILEDDESIGNOFSYSTEMFUNCTIONMODULEIDEASANDMETHODS,ASWELLASKEYTECHNICALDETAILSOFTHESYSTEMTOREALIZETHESIMPLEREQUIREMENTSOFSCMUNDERTHECONTROLOFTHEPROCESSANDIMPLEMENTATION,FROMASCIENTIFICANDPRACTICALPOINTOFVIEWTOACHIEVETHESYSTEMFUNCTIONALITYKEYWORDSSCMWATERLEVELCONTROLTEMPERATURECONTROLINTELLIGENT目录1引言12系统的总体方案设计321控制原理322控制功能423方案设计43系统硬件设计631单片机的硬件结构及特点6311单片机的引脚介绍6312单片机最小系统的设计932显示部分的电路设计1033按键部分的电路设计12331键盘的选择12332键盘的电路设计1234温度检测电路设计14341温度传感器的选用15342使用方法及电路设计1535液位检测电路设计18351电位器的选用18352电路设计1836电源部分的设计194系统的软件设计2141控制系统的主程序功能及流程图2141主程序流程图2142按键程序流程图2243定时器程序流程图2544显示程序流程图2645A/D转换程序流程图275调试2951硬件部分调试2952软件部分调试2953整体调试30结论31致谢32参考文献33附录A英文文献34附录B中文翻译40附录C电路图45附录D程序461引言热水器是现代家庭生活中的必需品,目前中国大约有35亿个家庭,每个家庭至少需要一台热水器每56年更换一次,可想而知中国热水器市场有多大热水器分为电热水器、燃气热水器、太阳能热水器三大类。燃气事故的多发性,对消费者的心理影响,安装环境的要求和燃气价格的上涨,使得燃气热水器销量在近几年急速下降;太阳能热水器因本身局限性无法全面推广,而电热水器借此市场良机迅速增长,在商场出售能统计到的比例约占热水器60,成为行业龙头。电热水器可分为储水式电热水器、快速电热水器两种。随着人民生活水平的提高,居住环境的改善,消费者时间观念的增强和消费观念的改变;加上中国各地电网建设和改造;以及国家政策全力推动电厂的建设,电价也将随之降低,使快速电热水器(即热式电热水器和速热式电热水器)在中国的使用条件得到满足,为快速电热水器市场普及带来了更大的发展契机,快速电热水器市场即将显示出强劲的发展态势,正引发一场热水器市场变革参照国外的经验,预计未来五年,快速电热水器以其安全、节能、快捷、小巧、方便等特点,将成为中国热水器市场的主流产品,而从消费者的角度考虑对热水器的要求也日益见长。(1)安全是电热水器永恒的主题。电热水器属于比较特殊的产品,不同于其他家用电器产品,电热水器的安全问题涉及到消费者的生命。由于电热水器的加热管置于内胆中的水中,而在使用电热水器时用户又全身潮湿,电阻很低,这时如果电热水器稍微有很小的泄漏电流就可能发生生命危险。要知道,没有任何东西能与生命的价值相提并论。这也是消费者在选购电热水器产品时所重点考虑的因素。科学技术的发展必须为消费者带来好处,首先必须为生命提供保障。(2)节能是电热水器发展的重点。众所周知,电热水器是家电产品的耗电耗水“大户”,据有关统计数据显示,目前我国居民使用的家电产品中仅热水器的保有量就大约有15亿台,城市居民家庭热水器的平均拥有量达715。去年以来,“电荒”、“水荒”席卷了大半个中国之后,电热水器的节能问题尤为广大消费者和生产企业所重视。目前已经有近20的电热水器生产企业通过了国家权威部门的节能认证。节能家电不是概念性炒作,而必须通过国家相关认证。(3)智能化、数字化是电热水器行业大势所趋。近年来彩电、空调、影碟机等家电产品,陆续进入了“智能化”、“数字化”时代。同样地,电热水器产品的发展也纷纷走上了智能化和数字化道路。此设计的目的在于通过运用所学的单片机系统,来实现热水器的各项功能,弥补前人在热水器方面的缺点与不足,真正体现热水器的智能化与简单化,并加强热水器的安全性与提高其性价比,让广大消费者能放心使用,安心享用1。2系统的总体方案设计21控制原理本设计采用单片机芯片STC12C5A60S2来实现对整个功能的控制,他不仅体积小而且灵敏度高,性价比高,稳定性好,是单片机中首选的芯片,通过读温度与水位的采样,来判断其执行的功能,温度的采样采用温度传感器DS18B20来完成,该传感器价格低廉,采用一线总线技术,硬件连接简单,使用方便,稳定性好,精度高,测量温度的范围大,在55125摄氏度,能准确的适用在热水器上,对于水位的控制,我首先考虑到使用压力传感器,但是压力传感器的造价高,安装起来不方便,最后我采用水瓢来控制电位器的滑动变阻器,从而输出不同的线性电压,在通过A/D转换来实现模数转换的方式实现对水位的控制,从而将水位值转换成数字量输入单片机进行处理,外观图如图21所示。图21外部结构图对于主控芯片的选择,有两种可以选择的方案,方案如下;方案一、使用普通51系列单片机,外部加上A/D转换芯片,对其进行水位的测量,电位器的电压经过A/D转换芯片,转换为数字量输入单片机,单片机经过转换后显示在数码管上,这样会使硬件部分的电路过于复杂,同时外挂的A/D转换芯片价格过高,性价比较低。方案二、使用具有A/D转换功能的单片机芯片,直接将电位器返回电压接入电位器注水口浮漂水位单片机A/D转换通道,单片机将电压转换为数字量,经过处理后,显示在数码管上,这样设计不仅可以减小硬件的复杂程度,而且还可以增加程序的可靠程度,性价比较高。从性价比与设计便捷性的方面考虑,最后选择具有A/D转换功能的单片机芯片,型号为STC12C5A60S2,作为微控制芯片使用。22控制功能设计中主要以单片机的控制为主,控制的主要功能有自动进水功能、自动停止进水功能、显示功能、自动加热功能、自动停止加热功能,而对于这些功能的控制都由单片机系统来完成,控制的流程为按键控制设定温度值与水位值并开始加热,单片机开始像温度传感器与A/D转化芯片提取温度码与电压转码,然后经过转换处理,将其转换成温度值与水位值并进行显示与比较,产生一系列动作,当达到温度上限时单片机控制热水器停止工作,并指示灯显示熄灭;当到达温度下限时,开始加热并发出指示灯点亮;当达到水位下限时,单片机控制进水阀开始进水,停止加热;当达到水位上限时停止进水,开始加热。23方案设计在总结之前热水器发展的基础上,另辟新境,让热水器系统的功能更完善,价格更低廉,使用更方便,基于这几点的要求,考虑此设计主要分为三大部分(1)主控制部分对于主控制部分,考虑到要完成的任务量较大,较复杂,所以使用单片机芯片来控制整个系统的完成,由于单片机的控制功能强大,为在设计中带来许多便捷的地方,并且单片机为可编程系统,还可以通过软件编程来实现热水器不同的功能。(2)温度和水位的信息提取部分温度的提取采用温度传感器DS18B20来实现完成的,对于此传感器大家并不陌生,他是具有一线总线功能的器件,不仅使用简单方便,而且精度很高,并且外接电路简单方便,为系统减少了许多负担。水位的提取与采集,主要是由电压转换而来,水位系统采用浮子带动连杆,连杆一端连接旋转的电位器,当浮子上下移动带动连杆转动就会使电位器的阻值发生变化,从而使电位器输出的电压发生变化,在通过A/D转换芯片,将电压值转化成数字量输入单片机进行处理后进行显示。(3)对于输出的控制信号的处理使用低电压控制高电压的继电器来实现,单片机输出信号对热水器的控制。总体方案设计功能控制框图如图22所示图22结构框图单片机按键输入DS18B20温度传感器显示输出继电器控制显示输出液位检测3系统硬件设计31单片机的硬件结构及特点宏晶公司推出的高档8位单片机。提高了芯片的集成度,性能上大为提高,增加了多种片内硬件功能,并扩展了功能单元的种类和数量。311单片机的引脚介绍掌握单片机,应首先了解该单片机的引脚,熟悉并牢记各引脚的功能。该单片机中各种芯片的引脚是互相兼容的。制造工艺为HMOS的MCS51的单片机都采用40只引脚的双列直插封装DIP方式。目前大多树为此类封装方式。制造工艺为CHMOS的8031/89C51/87C51除采用DIP封装方式以外,还采用方形封装方式。如图31所示23EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P10/AD01P11/AD12P12/AD23P13/AD34P14/AD45P15/AD56P16/AD67P17/AD78P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10VCC40GND20STC12C5A60S2图31STC12C5A60S2引脚图40只引脚按其功能来分,可分为如下4类(1)电源引脚VICKI、VSS。(2)时钟引脚XTAL1、XTAL2。(3)控制引脚/PSEN、ALE、/EA、RESET。(4)I/O口引脚;P0、P1、P2、P3、为4个8位I/O口的外部引脚。下面结合图31来介绍各引脚的功能7。电源及时钟引脚1、电源引脚电源引脚接入单片机的工作电源(1)VCC40引脚接5V电源。(2)VSS20引脚接地2、时钟引脚2个时钟引脚XTAL1,XTAL2外接晶体与片内的反相放大器构成了1个振荡器,它为单片机提供了时钟信号。2个时钟引脚也可以外接独立的晶体振荡器。XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL2,而XTAL1悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHZ,时钟频率就为6MHZ。晶振的频率可以在1MHZ24MHZ内选择。电容取30PF左右。型号同样为STC12C5A60S2的芯片,在其后面还有频率编号,有12,16,20,24MHZ可选。大家在购买和选用时要注意了。(1)XTAL1(19引脚)接外部晶体的1个引脚。该引脚内部是1个反相放大器的输入端。这个反相放大器构成了片内振荡器/如果采用外接晶体振荡器时,此引脚应接地。(2)XTAL2(18引脚)接外部晶体的另一端,在该引脚内部接至内部反相放大器的输出端。若采用外部时钟振荡器时,该引脚接收时钟振荡器的信号,即把此信号直接接到内部时钟发生器的输入端45。3、控制引脚此类引脚提供控制信号,有的引脚还具有复用功能。(1)RST/VPD9引脚RST(RESET)是复位信号输入断,高电平有效。当单片机运行时,在此引脚加上持续时间大于2个机器周期的高电平时候,就可以完成复位操作。在单片机正常工作时,此引脚应为05V低电平;VPD为本引脚的第二功能,即备用电源的输入断。当主电源VCC发生故障,降低到某一规定值的低电平时,将5V电源自动接入RST端,为内部RAM提供备用电源,以保证片内RAM中的信息不丢失,从而使单片机在复位后能继续正常运行。(2)ALE引脚输出为地址锁存允许信号,当单片机上电正常工作后,ALE引脚不断输出正脉冲信号。当单片机访问外部存储器时,ALE输出信号的负跳沿用于单片机发出的低8位地址经外部锁存器锁存的锁存控制信号。即使不访问外部存储器,ALE端仍有正脉冲号输出,此频率为时钟振荡频率的1/6。如果有脉冲信号输出,则单片机基本上是完好的;应该注意的是,每当MCS51访问外部数据存储器时,在2个机器周期中ALE只出现1次,即丢失1个ALE脉冲。因此,严格来说,用户不宜用ALE做精确的时钟源或定时信号。ALE端可以驱动8个LS型TTL负载;/PROG为本引脚的第二功能。在对片内EPROM型单片机编程写入时,此引脚作为编程脉冲输入端(3)/PSEN程序存储器允许输出控制端。在单片机访问外部程序存储器时,此引脚输出脉冲负跳沿作为读外部程序存储器的选通信号。此引脚外接部程序存储器的/OE端。/PSEN端可以驱动8个LS型TTL负载。如果检查一个MCS51单片机应用系统上电后,CPU能否正常到外部程序存储器读取指令码,可用示波器插在/PSEN端有无脉冲输出。(4)/EA/VPP(ENABLEADDRESS/VOLTAGEPULSEOFPROGRAMING,31脚)/EA功能为内外程序存储器选择控制端。当/EA引脚为高电平时,单片机访问片内程序存储器,但在PC(程序计数器)值超过0FFFH时,即超出片内程序存储器的4KB地址范围,将自动转向执行外部程序存储器内的程序。当/EA引脚为低电平时,单片机则只访问外部程序存储器,不论是否有内部程序存储器。对于STC12C5A60S2来说,因其无内部程序存储器,这样只能选择外部程序存储器。VPP为本引脚的第二功能。在对EPROM型单片机内EPROM固化编程时,用于施加较高的编程电压。对于STC12C5A60S2,则加在VPP引脚的编程电压为12V或5V。4、I/O口引脚(1)P0口8双向位三态I/O口,使用此I/O口作为段选码端。(2)P1口使用此I/O口作为按键接口。(3)P2口8位准双向I/O口,使用此I/O口作为位选码端。P1口,P2口,P3口是3个8位双向的I/O口,各口线在片内均有固定的上拉电阻。当这3个准双向I/O口作输入口使用时,要向该口先写1,另外准双向I/O口无高阻的“浮空”状态,故称为双向三态I/O口6312单片机最小系统的设计此次设计选用STC12C5A60S2的最小系统,STC12C5A60S2内部有60KB闪烁存储器,芯片本身就是一个最小系统。在能满足系统的性能要求情况下,可优先考虑采用此种方案。用这种芯片构成的最小系统简单很可靠。用STC12C5A60S2单片机构成的最小应用系统时,只要将单片机接上时钟电路和复位电路即可,该系统与其他最小系统相比,省去了外扩程序存储器的工作,该最小应用系统只能用作一些小型的数字量的测控单元。单片机最小系统电路如图32所示。EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P10/AD01P11/AD12P12/AD23P13/AD34P14/AD45P15/AD56P16/AD67P17/AD78P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10VCC40GND20STC12C5A60S2C122UFC222UFY112MHZC310UFR110K5VS19PB37PB38图32单片机最小系统1复位电路微处理器在上电、掉电及低压供电时,监控器产生脉冲信号这可以保证微处理器实现上电自动复位当供电压过低时,防止CPU失控。电源电压VCC升到1V时RESET引脚变为低电平,随着VCC的继续升高,RESET一直保持低电平。当VCC高于复位门限电平时,RESET并不马上变为高电平,而是要滞后一个复位脉冲宽度(约200MS)后再变为高电平。当VCC低于复位门限电平,RESET引脚马上变成低电平,即使以后VCC恢复且高于复位门限电平,RESET也不马上变成高电平,而是要延迟一个复位脉冲宽度。掉电时,VCC只要低于复位门限电平,RESET立即变为低电平。2晶振电路本单片机芯片所用晶振电路由12MHZ晶振与两个22F的电容组成,为单片机提供外来的震荡周期,通过改变晶振与电容的大小可以改变单片机的运行周期7。32显示部分的电路设计LED显示器结构常用的LED显示器分为8段(或7段,8段比7段多了1个小数点“DP”段)。每一个段对应1个发光2极管。这种显示器有共阳极和共阴极2中,共阴极LED显示器的发光二极管的阴极连接在一起,通常将公共阴极接地。当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。同样,共阳极LED显示器的发光二极管的阳极连接在一起,通常此公共阳极接正电压,当某个发光二极管的阴极接低电平时,发光二极管被点亮,相应的段被显示。为了使LED显示器显示不同的符号或数字,就要把不同段的发光二极管点亮,这样就要为LED显示器提供代码,因此这些代码可使LED相应的段发光,从而显示不同字型,因此该代码称之为段码(或成为字型码)6。1显示器的工作原理由N个LED显示块可拼连接成N位的LED显示器,N个LED显示块有N位为线和8XN根段码线。段码线控制显示字符的字型,而位选线位各个LED显示块中各段的公共端,它控制该LED显示位的亮或暗。2动态显示方式在多位LED显示时,为简化硬件电路,通常将所有位的段码线相应段并联在一起,由一个8位I/O口控制,形成段码线的多路复用,而各位的共阳极或共阴极分别由相应的I/O线控制,形成各位的分时选通。若要各位LED能够同时显示出与本位相应的显示字符,就必须采用动态显示方式,即在某一时刻,只让某一位的位线处于选通状态,而其他各位的位选线处于关闭状态,同时,段码线上输出相应位要显示的字符的段码。这样在同一时刻,4位LED中的只有选通的哪一位显示出字符,而其他3位则是熄灭的,同样在下一时刻,只让下一位选线处于选通状态,而其他各位的位选线处于关闭状态,在段码线上舒服将要显示字符的段码,则同一时刻,只有选通位显示出相应的字符,而其他各位则是熄灭的,如此循环下去,就可以使各位显示出相应的字符,虽然这些字符是在不同时刻出现的,而在下一时刻,只有一位显示,其他各位熄灭,但由于LED显示器的余辉和人眼的视觉暂留作用,只要每位显示间隔足够短,则可以造成多为同时亮的假象,达到同时显示的效果。LED不同位显示的时间间隔应根据实际情况而定。发光二极管从导通到发光有一定的延时,导通时间太短,则发光太弱,人眼无法看清,但也不能太长,因为要受限于临界闪烁频率,而且次时间越长,占用CPU时间也越长多。另外,显示位数增多,也将占用大量的CPU时间,因此动态显示实质是以牺牲CPU时间来换取器件的减少的。而对于此设计采用动态扫描方式作为显示,这样做的好处是,显示硬件无须外购芯片成本低,并且硬件电路连接简单,缺点是所需的I/O口线较多,软件编程循环容易与程序发生冲突,为了提高显示管的亮度,采用共阳极数码显示管,采用74HC573芯片作为驱动部分,74HC573器件输入是标准的CMOS输出兼容的;加上上拉电阻,他能和LS/ALSTTL数车兼容,操作电压20V60V。输出电流为10UA。其中使用单片机的P0口控制数码显示管的段码选择,数码管使用条件1段及小数点上加限流电阻;2使用电压根据发光颜色决定;3使用电流静态总电流80MA,动态平均电流45MA,峰值电流100MA。使用P2口做为位选码端,显示部分的硬件电路如图33所示。56图33数码显示电路图33按键部分的电路设计331键盘的选择常用的键盘一般分为两种行列式按键键盘与独立式按键键盘;例如常用的电脑键盘,家用计算器键盘都属于行列式键盘,行列式键盘的优点就是使用单片机的I/O口较少,而且连接电路简单;而独立式按键每一个按键需要占用一个独立的I/O口,用于按键较少的硬件电路中,综上说述,由于设置使用的键盘个数较少,所以使用独立式按键。332键盘的电路设计本设计使用按键的电路图如图34所示,图中的SXR1为10K的上拉电阻排,将按键的公用端接到地,在无按键动作的状态下,由于上拉电阻排的作用,单片P21P22P23P24P25P26P27P28OC1C111D22D33D44D55D66D77D88D91Q192Q183Q174Q165Q156Q147Q138Q12VCC20GND10U474HC5735V5VP01P02P03P04P05P06P07P085VCO4CO5CO6CO7CO8111210987612345LED84LED1CO1CO2CO3OC1C111D22D33D44D55D66D77D88D91Q192Q183Q174Q165Q156Q147Q138Q12VCC20GND10U574HC573机的P1口全部为高电平,如果S1按键被按下,则单片机的I/O口相当于被输入一个低电平信号,通过判断这个信号的高低电平来判断按键是否被按下。图34键盘电路图单片机应用系统中,键盘扫描只是单片机的工作内容之一。单片机在忙于各项工作任务时,如何兼顾键盘的输入,取决于键盘的工作方式。键盘工作方式的选取应根据实际应用系统中CPU工作的忙、闲情况而定。其原则是既要保证能即使响应按键操作,又不要过多的占用CPU的时间,通常,键盘工作方式有三种即编程扫描、定时扫描、中断扫描。1、编程扫描方式(查表)这种方式就是只有当单片机空闲时,才调用键盘扫描子程序,反复的扫描键盘,等待用户从键盘上输入命令或数据,来响应键盘的输入请求。键盘采用编程扫描方式工作,P1口高2位输出逐行扫描信号,在由P1口输入8位列信号,均为低电有效。首先P1口高2位拉低状态,置全0来扫描行,若P1低六位输出全1,则说明键盘无键按下;若不完全为1,则说明键盘有可能有键按下。其次用软件延时10MS来消除按键抖动的影响。确实有按键按下时,进行下一步。再次发逐行扫描,即先将第一行置0扫描,然后判断是否有列被置0,如果有则在这一行有按键按下,则将P1的键值返回,然后进行查表;如果没有按VCC1CO12345678SXR1关关关S1S2S3S4S5S6P11P12P13P14P15P16P17P18键按下,则扫描下一行,如果没有按键按下则返回值为0,也就是没有按键动作;最后等待按键释放后,在进行按键功能的处理操作。2、定时扫描的工作方式单片机对键盘的扫描也可以采用定时扫描方式,即每隔一定的时间对键盘扫描一次。在这种扫描方式中,通常利用单片机内的定时器,产生10MS的定时中断,CPU响应定时器溢出中断请求,对键盘进行扫描,在有键按下时识别出该键,并执行相应键的处理功能程序。3、中断工作方式为了进一步提高单片机扫描键盘的工作效率,可采用中断扫描方式,即只有在键盘有按键按下时,才执行键盘扫描程序并执行该按键功能程序,如果无按键按下,单片机将不理睬键盘。本设计中使用编程扫描的方式来完成对按键的功能的判断与执行。34温度检测电路设计本次设计所采用的温度传感器为当今最流行畅销的DS18B20,该传感器不仅硬件接口简单而且价格低廉,灵敏度高,体积小,具有耐磨耐碰,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域,并且实现一线总线技术,只需要一根线就可以完成所有的命令与数据的传输,外形如图35所示图35DS18B20外形图341温度传感器的选用1(1)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。(2)测温范围55125,固有测温分辨率05。(3)支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现多点测温(4)工作电源35V/DC(5)在使用中不需要任何外围元件(6)测量结果以912位数字量方式串行传送(7)适用于DN1525,DN40DN250各种介质工业管道和狭小空间设备测温(8)标准安装螺纹M10X1,M12X15,G1/2”任选(9)PVC电缆直接出线或德式球型接线盒出线,便于与其它电器设备连接。2传感器的应用场合(1)该产品适用于冷冻库,粮仓,储罐,电讯机房,电力机房,电缆线槽等测温和控制领域(2)轴瓦,缸体,纺机,空调,等狭小空间工业设备测温和控制。(3)汽车空调、冰箱、冷柜、以及中低温干燥箱等。(4)供热/制冷管道热量计量,中央空调分户热能计量和工业领域测温和控制。342使用方法及电路设计1、接线说明独特的一线接口,只需要一条口线通信多点能力,简化了分布式温度传感应用无需外部元件可用数据总线供电,电压范围为30V至55V无需备用电源测量温度范围为55C至125。华氏相当于是67F到257华氏度10C至85C范围内精度为05C,温度传感器可编程的分辨率为912位,温度转换为12位数字格式最大值为750毫秒用户可定义的非易失性温度报警设置应用范围包括恒温控制,工业系统,消费电子产品温度计,或任何热敏感系统,温度与12为返回值对应如表31所示表31数据温度对照表温度C数据输出(二进制)数据输出(十六进制)125000000001111101000FA55000000000011001000321/2000000000000000100010000000000000000000001/211111111111111111FFFF2511111111111001110FFCE5511111111110010010FF9212位数据中后四位为温度值的小数部分二进制的一位数代表十进制的05,而剩下8位为温度显示的整数部分最大值为00FA,当返回值大于FF92实此时温度为负值,对应对温度值进行处理就可得到实际的测量温度;2、DS18B20内部结构主要由四部分组成64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。该装置信号线高的时候,内部电容器储存能量通由1线通信线路给片子供电,而且在低电平期间为片子供电直至下一个高电平的到来重新充电。DS18B20的电源也可以从外部3V55V的电压得到,结构图如图36所示图36DS18B20的内部原理图3、DS18B20控制功能命令读ROM、ROM匹配、搜索ROM、跳过ROM、报警检查。这些指令操作作用在没有一个器件的64位光刻ROM序列号,可以在挂在一线上多个器件选定某一个器件,同时,总线也可以知道总线上挂有多少,什么样的设备。若指令成功地使DS18B20完成温度测量,数据存储在DS18B20的存储器。一个控制功能指挥指示DS18B20的演出测温。测量结果将被放置在DS18B20内存中,并可以让阅读发出记忆功能的指挥,阅读内容的片上存储器。温度报警触发器TH和TL都有一字节EEPROM的数据。如果DS18B20不使用报警检查指令,这些寄存器可作为一般的用户记忆用途。在片上还载有配置字节以理想的解决温度数字转换。写TH,TL指令以及配置字节利用一个记忆功能的指令完成。通过缓存器读寄存器。所有数据的读,写都是从最低位开始。4、DS18B20的控制命令A温度转换44H启动DS18B20进行温度转换B读暂存器BEH读暂存器9个字节内容C写暂存器4EH将数据写入暂存器的TH、TL字节D复制暂存器48H把暂存器的TH、TL字节写到E2RAM中E重新调E2RAMB8H把E2RAM中的TH、TL字节写到暂存器TH、TL字节F读电源供电方式B4H启动DS18B20发送电源供电方式的信号给主CPU5、DS18B20的初始化步骤如下(1)先将数据线置高电平“1”。(2)延时(该时间要求的不是很严格,但是尽可能的短一点)(3)数据线拉到低电平“0”。(4)延时750微秒(该时间的时间范围可以从480到960微秒)。(5)数据线拉到高电平“1”。(6)延时等待(如果初始化成功则在15到60毫秒时间之内产生一个由DS18B20所返回的低电平“0”。据该状态可以来确定它的存在,但是应注意不能无限的进行等待,不然会使程序进入死循环,所以要进行超时控制)。(7)若CPU读到了数据线上的低电平“0”后,还要做延时,其延时的时间从发出的高电平算起(第(5)步的时间算起)最少要480微秒。将数据线再次拉高到高电平“1”后结束。本设计中的测温部分的电路图如图37所示,其中1引脚接高电平,3引脚接地,单片机的P37口接温度传感器DS18B20的通信2口,通过一个51K的上拉电阻将该I/O口上拉后,便可通过指令进行通信。图37温度传感器电路图35液位检测电路设计351电位器的选用由于液位传感器价格昂贵,对于液位测量部分设计中使用电位器来代替液位传感器,液位传感器返回的信号为05V的直流信号,所以选用电位器作为替代最为可靠,通过旋转电位器的旋转端,来调整电压值,变化范围为05V。352电路设计水位测量模拟电路如图38所示,图中PR1为10K电位器,通过旋转电位器RD151K5VP38123DR13关关关来改变P18口的输出电压,电位器采用串联电阻分压的方式,调整时可以输出05V的直流电压。P185VPR110K图38水位测量模拟电路图36电源部分的设计本设计中采用7805与外接12V变压器来组成5V电源,对单片机进行供电,使用7805供电的优点是,工作输入电压在735伏范围内能准确输出5V电压,并且外接电路简单可靠,性价比高;电源部分的硬件电路如图39所示。图39电源电路图三端稳压集成电路7805外形如图39所示,从做到右引脚排列依次为1、2、3引脚,1引脚功能为输入端,3为公共接地端,2为输出端,输入电压值在7V35V之间,但是当输入电压值大于17V时应为7805加上散热片,否则容易由于过热而导致烧坏。132VVGNDINOUTU27805变压器220V12VC1104C2104C3470UFC4470UF5V图3107805外形图电子产品中常见到的三端稳压集成电路有正电压输出的78系列和负电压输出的79系列。故名思义,三端IC是指这种稳压用的集成电路只有三条引脚输出,分别是输入端、接地端和输出端。它的样子象是普通的三极管,TO220的标准封装,也有9013样子的TO92封装。用78/79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。该系列集成稳压IC型号中的78或79后面的数字代表该三端集成稳压电路的输出电压,如7806表示输出电压为正6V,7809表示输出电压为负9V。4系统的软件设计41控制系统的主程序功能及流程图软件系统主要完成下述主要功能(1)初始化程序的设置(2)按键的扫描(3)读取温度值与取A/D转换的8位的二进制值(4)对取回值转换成所需的温度与水位(5)显示温度值与水位(6)判断是否到设定温度与设定水位41主程序流程图主程序完成程序的初始化部分,首先初始化,然后定义单片机的A/D转换口,本设计中使用的单片机是具有A/D转换功能的STC12C5A60S2单片机,使用此单片机就会省去使用一个外挂的A/D转换芯片,使用此单片机的A/D转换步骤为,定义A/D转换的转换口,将A/D转换的寄存器清0,打开A/D转换电源,延时4MS,等待A/D转换上电,然后开启定时器0,开始定时,进入按键执行程序,此后将会一直执行按键执行程序,程序流程图如图41所示。图41主程序流程图42按键程序流程图按键程序流程图如图42所示,该程序主要完成对按键的判断与执行操作,单片机的P1口接入按键程序,使用的按键程序为独立按键,6个按键,这样将占用6个I/O,分别为P10P15,而P17口留给A/D转换使用,将每一个I/O口接一个10K的上拉电阻,当有I/O口的值为低电平时则证明该I/O口有按键被按下,所以程序只要判断哪个I/O口为低电平,就能判断出哪个按键被按下,由于程序中的A/D转换口与按键口都为P1口所以为了使按键不受到干扰,使用的判断方式不能对整个I/O口进行操作,所以当为单片机的I/O口赋值为1时,只对用到的单片机的I/O口进行赋值,首先将按键的I/O口赋值为1,如果有按键按下,然后延时50MS,然后再次将按键的I/O口置1,再次判断是否有按键按下,如果有按键,则证明确实有按键动作,则将此时的按键值进行组合,然后进行查询程序,将按键键值码储存后开始查询,这样就会将对应的按键值判断出来,然后判断如果在设置值界面,则进入按键值处理程序,该程序将会对程序中对于需要修改的开始初始化定义A/D转换口A/D寄存器清0开A/D转换电源延时4MS定时器0设置按键程序值进行加减处理,然后进入判断按键是否松开,然后程序结束并返回。按键1进入设置界面,第一次按下进入设置温度界面,第二次按下进入设置水位界面。按键2返回功能,返回主测量界面。按键3在设置界面,将光标处的值加1。按键4在设置界面,将光标处的值减1。按键5调整闪烁位左移。按键6调整闪烁位右移。图42按键程序流程图开始延时50MS有按键动作按键I/O口复位组合按键值再次判断返回主界面设置值加1设置界面返回YNYNY0X020X040X01光标左移光标右移设置值减1Y0X100X200X08NNYNYNYNYN43定时器程序流程图定时器0程序完成程序的定时、累计时间、A/D转换部分,定时器0的设置,使用定时/计数0,定义为定时器0、方式1,为16位定时寄存器装初始值,由于16位定时器在晶振为12MHZ的状态下的定时器间最长为65536US,为加计数状态,达到计数值65536则跳到中断再次进行初始值的重装,所需要的定时器值为1MS,便于计算,所以初始值为655361000,则定时初始值为64536,将其高8位赋值TH0,低8位赋值TL0,然后将定时器0的累计值加1,主要是为了增加定时时间,而当定时器0的值为半秒时,这时定时器的累计值为05S,然后将定时器累计值归0,重新定时,然后将半秒位取反,半秒位用来控制在数码管作调整时,闪烁光标位的定时,然后进入显示程序,显示程序中包含A/D转换程序,然后进行与设定值的比较程序,最后打开定时器0,跳出中断程序,流程图如图43所示。图43定时器0流程图44显示程序流程图显示子程序完成对显示内容的更新,A/D转换程序的运行,同时选择显示界面与切换各个显示界面,进入程序后,首先判断为显示测量温度与A/D转换值界面,还是显示调整值界面,如果为显示温度与A/D转换值界面,先消隐然后位选、段选,之后判断是否点亮小数点,进行A/D转换程序,采集A/D转换值,如果是显示调整值界面,在消隐位选后,判断是否闪烁,如果闪烁通过半秒屏蔽位来控制,半秒停止显示,半秒显示数值,这样就达到了闪烁的目的,然后将显示控开始停止定时器0赋定时器初始值定时累计值加1定时累计值归0累计值500半秒位取反显示程序比较程序开定时器0返回YN制位加1,判断显示控制位如果为4,则在重新返回重新显示,然后返回。图44显示子程序流程图45A/D转换程序流程图本设计中使用STC12C5A60S2单片机芯片,该芯片具有A/D转换功能,使开始消隐显示界面判断位选段选显示小数点显示小数点A/D转换温度转换消隐位选是否闪烁关闭显示显示段码值显示位加1显示位为4显示位归0返回YNYNYNYN用单片机的P17口作为A/D转换口,在初始化设置中已将A/D转换进行过初始化,所以在提取AD转换值时,步骤为开始A/D转换,输入A/D转换指令,然后做一个4个机器周期的延时,之后等待A/D转换的完成,如果转化完成,则停止A/D转换,储存转换值,然后返回,流程图如图45所示。图45A/D转换程序开始开始A/D转换延时4个机器周期等待转换完成停止A/D转换储存A/D转换值返回YN5调试51硬件部分调试硬件部分设计使用PROTEL99SE作为硬件设计软件,通过软件绘制电路图,选择元件,然后使用开发板,自己焊接调试,硬件部分模块都有单片机最小系统、显示电路、键盘电路、温度检查电路、水位检测电路,下面分别对如下主要模块的调试进行讲解。1单片机最小系统单片机最小系统为单片机的最小组成部分,该部分由晶振电路与复位电路构成,首先焊接单片机芯片引脚座,40引脚,之后按照电路图分别焊接复位电路,晶振电路,其中的部分元件为了节省空间,将其放在芯片座内,这样更加美观整洁,焊接完成后使用万用表进行检测,按照电路图电路部分,电路检测完成后,对该系统进行测试,通电后,使用电脑对该芯片进行下载,找一个简单程序下载即可,如果下载成功,证明单片机最小系统焊接成功,在焊接时一定注意单片机的31引脚需要接高电平,这是关键。2显示电路的调试显示电路由LED共阳极数码管与驱动芯片74HC573构成,焊接时,一定将单片机的P0口加上拉电阻,否则,单片机的P0口的驱动能力不足以满足LED的驱动,而导致显示不明显,或不正常,焊接后要对每一条线路进行检查,查看是否连接无误,之后先用5V直流电源,对数码管的控制端进行检测,检测成功后,可以下载一个显示程序进行检测。3键盘电路的测试键盘电路使用独立按键,其焊接比较简单,先将P1口焊接一个上拉电阻排,然后将I/O口对应独立按键的接口,之后使用万用表测量通断,旋钮打到蜂鸣档位,按下按键,蜂鸣器如果蜂鸣,证明接通,否则进行检查,是否有虚焊点。52软件部分调试软件部分使用模块化的方式,即各个模块分开编程测试,最后将其整合在一起,其模块划分如下1显示模块对数码管进行扫描显示,计算扫描时间,进行测试,通过软件调试到数码显示正常,将显示模块的入口与出口设置好,以方便其他程序调用,显示程序设置在定时器中,定时器定时2MS,进行一个数码管的显示,显示完一次的时间为8MS。2键盘程序键盘程序使用软件的编程思维方式,将该按键程序放在入口程序中,放在WHILE(1);语句中进行不断的循环,通过IF语句进行判断,有按键按下,下载程序后,将按键的工作设置为LED的数码管显示,第一个按键显示1,最后一个显示6,这样就可以检测按键模块是否正常。3温度采集温度采集中重要的部分为DS18B20的初始化设置,只要初始化设置成功,那么提取程序就会相对成功,在初始化时,设置一个LED初始化成功的指示灯,当初始化正确时,LED彩灯点亮,如果不成功则一直初始化,最后进行调试后,达到可以测温的效果。4A/D转换部分本次设计的A/D转换部分为单片机内部自带的A/D转换,通过指令的控制即可完成,其中调试时,使用硬件的电位器进行调试,旋转电位器,将数字值显示到数码显示管上,这样调试成功。53整体调试在软件与硬件调试全成功的前提下,将软件部分与硬件部分进行相结合,单片机复位后,先设置水位报警值与温度报警值,温度值设置为30度,水位值任意设置一个值例如为15L,之后用手捏住DS18B20温度传感器,使其温度上升为30度以上,可以停止加热,当低于这个温度,开始加热,之后旋转水位电位器,当水位低于程序内部设置的下限值时开始加水,当全部调试完成后,系统就可以正常使用了。结论本设计的热水器控制系统设计成功,能对水位和水温进行测量和控制,并且能够调节温度上下限与水位下限,并能时刻显示水位与温度值,是新一代的智能化产品,该设计的完成与实现,与所学的知识是紧密相连的,通过本次设计,不仅是对所学知识的考查,更是对我的自学能力和收集资料能力以及动手能力的考验。本次设计使我对一个项目的整体设计有了初步认识,还认识了很多器件,并能独立设计出其接口电路,并学会了使用PROTEL设计电路。本次设计还使我意识到了实践的重要性,在硬件制作和软件调试的过程中,出现了很多问题,最终都是通过反复实验解决的。还有对于程序编辑的逻辑性与可更改性的重要性,通过这次设计,我能准确的编辑C语言程序,不仅锻炼了我编程序的能力,而且还教会了我怎样独立思考问题,完成课题的设计任务,到达完整化、简单化、合理化。总之,在设计的过程中,无论是对于学习方法还是理论知识,我都有了新的认识,这将激励我在今后再接再厉,不断完善自己的理论知识,提高实践运作能力。致谢四年的美好的大学生活仿佛就要在这篇毕业论文最后的谢辞里缓缓落幕,青春散场,时光依然,有些怅然若失,却又收获满载,回首前路,曾经的点点滴滴在我的心头涌起。在这里要特别感谢我的指导耿欣老师,感谢你在整个毕业论文的创作过程中对我的帮助和指导,感谢你在我懈怠散漫时的督促与教诲;感谢曾在我的毕业设计中予以我帮助的所有同学和朋友,感谢他们陪我一起走过大学生涯的最后一段,使得我的论文能够如期顺利完成。在这里,想说的只有俩个字谢谢,衷心的谢谢。衷心感谢四年里教导过的我的每一位师长,你们严谨致学的态度,高风亮节的品质是我人生路上的楷模和坐标感谢和我一起共渡三年的兄弟姐妹,感谢你们在我脆弱无助时的温暖的鼓励和真诚的帮助,你们的友情永远是我生命里最珍贵的财富,感谢沈阳理工大学应用技术学院给予我的一切知识,信任,勇气和力量。虽然刚刚建校不久,还有好多东西不完善,但是却给我带来了许多东西。并在生命里打下了深深的烙印。通过这次毕业设计,我在老师的辛勤指导和严格要求下,获得了丰富的理论知识,并在设计过程中翻阅了大量的科技文献,针对内容的要求对所学过的专业知识又认真细致的进行巩固和练习,在硬件和软件的组合上认真听取了指导老师的意见,在另一方面极大地提高了实践能力,并对当前的电子领域的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论