版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
{管理信息化物联网}温度采集智能家居热水器毕业设计温度采集智能家居热水器学号系别指导教师(职称)完成时间2016年3月20日温度采集智能家居热水器摘要随着社会的发展,人类科技的进步,各行各业都在使自己的产品智能化、数字化,精品文档放心下载因老式的热水器使用煤气或天然气对水进行燃烧加热,用手动的方式调节温度,不精品文档放心下载仅不能够精确的确定使用者需要的水温,而且还存在一定的危险性。感谢阅读电热水器是一种可供浴室、洗手间及厨房使用的家用电器,随着人们生活质量的提谢谢阅读高,现代的家用电热水器已经摒弃了以前的做法,而采用一种更加精确、安全的实感谢阅读施方案。C语言对单片机编程有诸多优点,例如:便于移植、句法检查时错误少、坚固性好、谢谢阅读头文件种类诸多,能够方便快捷使用各种函数等。本文采用STC89C52单片机作为谢谢阅读控制器,使用C语言编写程序,设计了一款智能家用电热水器。使用按键键盘设定感谢阅读温度,温度可以精确到0.1摄氏度,并使用LED灯显示,能够精确提供用户所需温感谢阅读II温度采集智能家居热水器度的温水。采用DS18B20采集温度,使用LED灯显示,精确的显示出采集的水温。谢谢阅读当所需温度高于当前采集的水温时,使用继电器控制外接加热源,当所需温度低于精品文档放心下载当前采集的水温时,继电器断开不加热。当所需温度高于采集温度时,继电器吸合谢谢阅读开始加热。基本实现了智能控制功能。关键字:18B20、STC89C52、热水器ABSTRACTWiththedevelopmentofsociety,theprogressofhumanscienceandtechnology,inal精品文档放心下载lwalksoflifetomaketheirproductsintelligent,digital,becausethewaterheate精品文档放心下载rusingold-fashionedgasornaturalgasisburnedtoheatwater,adjustthetemperat精品文档放心下载uremanually,notonlycantheuserneedstobeaccuratelydetermined,andthereisso谢谢阅读merisk.Electricwaterheaterisakindofhouseholdappliancesforbathroomandkitchen,re谢谢阅读stroomuse,alongwiththeimprovementofpeople'slivingquality,householdelect感谢阅读ricwaterheatermodernhaverejectedthepreviouspractice,andbyusingamoreaccu谢谢阅读rate,safeimplementationplan.感谢阅读TheClanguagehasmanyadvantages,suchas:microputerprogrammingfortransplant感谢阅读ation,syntaxcheckerrorless,robust,headfiletypemany,canbeconvenienttouse谢谢阅读III温度采集智能家居热水器avarietyoffunctions.ThispaperadoptsSTC89C52MCUasthecontroller,theuseofC感谢阅读programminglanguage,designedaintelligenthomeelectricwaterheater.Usethek精品文档放心下载eyboardtosetthetemperature,thetemperaturecanbeaccurateto0.1degreesCelsi精品文档放心下载us,andtheuseofLEDlightsdisplay,canaccuratelyprovidetherequiredtemperatu精品文档放心下载reofwarmwater.TheDS18B20collectiontemperature,theuseofLEDlightsdisplay,谢谢阅读displaythetemperaturepreciseacquisition.Whentherequiredtemperatureishig感谢阅读herthantheacquisitionoftemperature,usetherelaytocontroltheexternalheati谢谢阅读ngsource,whentherequiredtemperatureislowerthanthecurrentcollectingwater,r精品文档放心下载elayoffwithoutheating.Whentherequiredtemperatureishigherthantheacquisit精品文档放心下载ionoftemperature,relaystartsheating.Thebasicrealizationoftheintelligent精品文档放心下载controlfunction.Keywords:18B20、STC89C52、目录1引言12设计内容及性能指标13系统方案比较、设计与论证23.1主控制器模块2IV温度采集智能家居热水器3.2温度测量23.3设置温度33.4显示模块43.5电源选取44系统器件选择55硬件实现及单元电路设计65.1主控制模块65.2显示模块电路65.3数码管显示驱动电路75.4温度传感器(DS18B20)电路75.4.1DS18B20基本介绍75.4.2DS18B20控制方法85.4.3DS18B20供电方式85.5继电器加热控制电路96系统软件设计106.1程序结构分析106.2系统程序流图10V温度采集智能家居热水器6.2.1DS18B20初始化程序流程图126.2.2读温度子程序流程图126.3程序编写与调试136.6.1Keil编译器软件简介136.3.2使用Keil软件建立一个工程136.3.3使用Debug进行调试177系统的安装与调试197.1安装步骤197.2电路的调试197.3本章小结19结论19参考文献20附录1整体电路原理图21附录2部分源程序22VI温度采集智能家居热水器1引言感谢阅读谢谢阅读水器造成的爆炸、中毒等事故也屡有所闻。消费者对燃气热水器怀有一定的惧怕感,谢谢阅读所以燃气热水器渐渐淡出市场。而智能电热水器越来越受到人们的认可。感谢阅读电热水器在中国的历史已经有10多年了,期间也经历了数次起落的过程,在上个世谢谢阅读谢谢阅读谢谢阅读感谢阅读感谢阅读谢谢阅读精品文档放心下载我国在对电热水器水温水位系统的研究已取得很大的成就,并在不断地完善之中。精品文档放心下载感谢阅读谢谢阅读谢谢阅读感谢阅读测器是以STC89C52单片机作为主控制元件来能实现热水器里的水温显示在数码管。精品文档放心下载更进一步的采用继电器实现自动控制加热装置,是单片机应用在工业、农业、国防、感谢阅读精品文档放心下载精品文档放心下载温度采集智能家居热水器操作也是不可缺少的。在本设计中,研究智能电热水器的水温检测器非常有意义。精品文档放心下载2设计内容及性能指标本设计采用51单片机+DS18B20温度传感器+数码管显示+继电器+功能按键组成。谢谢阅读DS18B20感谢阅读精品文档放心下载精品文档放心下载精品文档放心下载测精确到0.1EEPOM精品文档放心下载有连加、减功能。3系统方案比较、设计与论证谢谢阅读系统功能的方案。3.1主控制器模块方案1:采用可编程逻辑器件CPLD作为控制器。CPLD谢谢阅读密度高、体积小、稳定性高、IO资源丰富、易于进行功能扩展。采用并行的输入输谢谢阅读谢谢阅读谢谢阅读度考虑我们放弃了此方案。方案2:温度采集智能家居热水器采用STC89C52单片机作为整个系统的核心,用其控制水温测量控制系统,以实现其感谢阅读谢谢阅读——谢谢阅读谢谢阅读优点。STC89C52I/O谢谢阅读多达8K,对于本设计也绰绰有余,更可贵的是STC89C52单片机价格非常低廉。感谢阅读3.2温度测量方案1:采用数字温度芯片DS18B20精品文档放心下载精品文档放心下载工业测温元件,此元件线形较好。在0—100摄氏度时,最大线形偏差小于1摄氏度。谢谢阅读DS18B20DS18B20和微控制精品文档放心下载器STC89C52构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。谢谢阅读这样,测温系统的结构就比较简单,体积也不大。采用51单片机控制,软件编程的自精品文档放心下载谢谢阅读单,安装方便。既可以单独对多DS18B20控制工作,还可以与PC机通信上传数据,谢谢阅读另外STC89C52在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使精品文档放心下载用都很成熟。方案2:精品文档放心下载精品文档放心下载温度采集智能家居热水器精品文档放心下载A/D精品文档放心下载A/D精品文档放心下载精品文档放心下载精品文档放心下载的缺点,并且这种设计需要用到A/D转换电路,感温电路比较麻烦。精品文档放心下载图1热电偶电路图感谢阅读精品文档放心下载故本次设计采用了方案一。3.3设置温度方案1:4谢谢阅读4个感谢阅读接口。方案2:可采用4*4矩阵键盘,该键盘需要8个接口,而我们不需这么多键。谢谢阅读综上所述,我们选择第一种方案。3.4显示模块方案1:精品文档放心下载温度采集智能家居热水器广泛应用。方案2:用LCDLCD精品文档放心下载谢谢阅读内容,而且LCD液晶价格贵,因此我们放弃了此方案。精品文档放心下载综上所述我们选择方案13.5电源选取由于本系统采用电池供电,我们考虑了如下几种方案为系统供电。精品文档放心下载方案1:采用5V蓄电池为系统供电。蓄电池具有较强的电流驱动能力以及稳定的电压输感谢阅读感谢阅读弃了此方案。方案2:采用3节1.5V干电池共4.5V谢谢阅读器的工作电压稳定能够满足系统的要求,而且电池更换方便。谢谢阅读综上所述采用方案24系统器件选择1.温度传感器的选择谢谢阅读较多的外部元件支持,且硬件电路复杂,制作成本相对较高。这里采用DALLAS公司感谢阅读的数字温度传感器DS18B20作为测温元件。温度采集智能家居热水器图2外部封装形式图3传感器电路图5硬件实现及单元电路设计5.1主控制模块主控制最系统电路如图4所示。图4单片主控电路5.2显示模块电路显示采用四位数码管显示,当位选打开时,送入相应的段码,则相应的数码管打开,精品文档放心下载感谢阅读的位选时,时间间隔低于20ms,从人类视觉的角度上看,就仿佛是全部数码管同时感谢阅读显示的一样。显示电路如图5图5数码管显示5.3数码管显示驱动电路三极管8550来驱动4位数码管,不仅简单,而且价格便宜。谢谢阅读图6驱动电路5.4温度传感器(DS18B20)电路5.4.1DS18B20基本介绍DS18B20是美国DALLAS半导体公司推出的第一片支持“一线总线”接口的温度谢谢阅读谢谢阅读直接将温度转化成串行数字信号处理器处理。DS18B20进行精确的温度转换,I/O线必须保证在温度转换期间提供足够的能量,感谢阅读由于每个DS18B20在温度转换期间工作电流达到1mA感谢阅读温度采集智能家居热水器I/O线上进行多点测温时,只靠4.7K上拉电阻就无法提供足够的能量,会造成无法感谢阅读转换温度或温度误差极大。谢谢阅读系统中。并且工作电源VCC必须保证在5V,当电源电压下降时,寄生电源能够汲取谢谢阅读的能量也降低,会使温度误差变大。图7温度传感器电路引脚图5.4.2DS18B20控制方法DS18B20有六条控制命令:温度转换44H启动DS18B20进行温度转换谢谢阅读读暂存器BEH读暂存器9个字节内容写暂存器4EH将数据写入暂存器的TH、TL字节感谢阅读复制暂存器48H把暂存器的TH、TL字节写到E2RAM中感谢阅读重新调E2RAMB8H把E2RAM中的TH、TL字节写到暂存器TH、TL字节谢谢阅读读电源供电方式B4H启动DS18B20发送电源供电方式的信号给主CPU精品文档放心下载5.4.3DS18B20供电方式DS18B20DS18B20的1谢谢阅读脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图3.1所示谢谢阅读DS18B20精品文档放心下载一个三极管来完成对总线的上拉。本设计采用电源供电方式,P2.2口接单线总线为感谢阅读保证在有效的DS18B20时钟周期内提供足够的电流,可用一个上拉电阻和STC89C52谢谢阅读的P2.2来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D变换操作时,精品文档放心下载温度采集智能家居热水器总线上必须有强的上拉,上拉开启时间最大为10μs。采用寄生电源供电方式是VDD谢谢阅读和GND精品文档放心下载制DS18B20完成温度转换必须经过3个步骤:谢谢阅读初始化。ROM操作指令。存储器操作指令。5.5继电器加热控制电路电路如图8主要是用来给外部加热源加热的。图8继电器加热电路6系统软件设计6.1程序结构分析3感谢阅读感谢阅读感谢阅读6.2系统程序流图感谢阅读谢谢阅读DS18B20精品文档放心下载9通过调用读温度子程序把存入内存储中的整数部分与小数部分开分存放在不的的两个谢谢阅读温度采集智能家居热水器单元中,然后通过调用显示子程序显示出来。图6.2.1DS18B20初始化程序流程图在DS18B20工作之前需要进行初始化,流程图如下:感谢阅读图10初始化程序流程图6.2.2读温度子程序流程图读温度子程序的主要功能是从DS18B20精品文档放心下载序流程图如下:图11温度子程序流程图6.3程序编写与调试6.6.1Keil编译器软件简介KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,感谢阅读C谢谢阅读CKeilC51软件提供丰富的精品文档放心下载Windows精品文档放心下载KeilC51精品文档放心下载谢谢阅读势。下面详细介绍KeilC51开发系统各部分功能和使用。感谢阅读图15C51工具包整体结构图KeilC51单片机软件开发系统的整体结构C513.1谢谢阅读中uVision与Ishell分别是C51forWindows和forDOS的集成开发环境(IDE),可以感谢阅读IDE本身或其它感谢阅读温度采集智能家居热水器编辑器编辑CC51及A51编译器编译生成目标文件(.OBJ)。感谢阅读目标文件可由LIB51L51连接定位生成绝对精品文档放心下载目标文件(.ABS)ABS文件由OH51转换成标准的HexdScope51或感谢阅读tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可精品文档放心下载以直接写入程序存贮器如EPROM中。6.3.2使用Keil软件建立一个工程Keil是目前进行51单片机开发最常用的编译软件。关于Keil的使用,有很多的资谢谢阅读料介绍,这里只介绍其整个编译过程,在最短时间内开始使用Easy51DP-2开发板。谢谢阅读对于KeilKeil谢谢阅读序,都是以一个工程的形式建立的。一个工程里可以有一个或多个*.c文件和*.h文感谢阅读件,但只可以有一个main()函数。一般的做法是将包含main()函数的C文件加入到感谢阅读工程中,其他文件以#include头文件的形式加到这个C文件里。这样,在编译的时谢谢阅读候,其他的文件会被自动的导入到工程里来。打开Keil软件后,出现(图16)所示界面。当然,如果Keil在上次关闭时有打开感谢阅读的工程,再一次打开时它会自动加载上一次的工程文件。图16Keil软件主界面首先点击Project->NewProject…(Project->OpenProject…为打开一个已经存在谢谢阅读的工程),如图17所示。图17Keil软件打开新工程界面点开后,在出现的对话框中选择工程存在路径,单击“保存”后,出现(如图18所精品文档放心下载示)界面。在此界面上选择电路板上所用的单片机型号:AtmelSTC89C52(或者是精品文档放心下载温度采集智能家居热水器AT89S52,视开发板上具体型号而定),单击“确定”。精品文档放心下载图18选择电路板上所用的单片机型号“是否将8051上电初始化程序添加入工程?如图19所示,谢谢阅读这个一般选择“否”。(关于STARTUP.A51的相关内容可查阅相应资料)精品文档放心下载图19是否将8051上电初始化程序添加入工程感谢阅读这样,就建立了一个空的51工程。File->New感谢阅读建立了一个空的文本框。现在,就可以开始在里面输入你的代码了。精品文档放心下载保存时注意:如果是用C语言写的程序,则将文本保存成*.c,如果是用汇编写的程谢谢阅读序,则将文本存成*.asm。感谢阅读译。因为还没有将程序代码添加到工程里面去。20ProjectWorkspace精品文档放心下载里的SourceGroup1上右击,选择AddFilestoGroup’SourceGroup1’。在打开的对精品文档放心下载话框中,选择刚存的文件路径和对应的扩展名。这样,程序就添加进了这个工程。谢谢阅读图20添加文件到工程中下一步,就开始编译刚输入进去的代码。点击工具栏中的按钮。接着,Keil会打出谢谢阅读下面的提示:Buildtarget'Target1'assembling...linking...温度采集智能家居热水器ProgramSize:data=8.0xdata=0code=100精品文档放心下载"first"-0Error(s),0Warning(s).精品文档放心下载“"first"-0Error(s),0Warning(s).”0个错误和0精品文档放心下载个警告。建立工程的时候,默认是不生成HEX文件的,得在编译做如下设置:单击,感谢阅读或者在ProjectWorkspace里Target1上右击,选择“OptionsforTarget感谢阅读‘Target1’”21精品文档放心下载选框勾上,点“确定”。现在再点击重新编译,系统提示:“creatinghexfilefrom"first"...”。便会在工精品文档放心下载程所在文件夹里生成HEX文件。图21生成HEX文件6.3.3使用Debug进行调试Keil有很强大的调试功能,可以显示C程序的反汇编代码、可以计算代码运行的时精品文档放心下载谢谢阅读Debug感谢阅读参看相关书籍资料。图22调试前设置窗口22Target感谢阅读不用作修改。设置完成后,单击,进入调试界面(如图23所示)。精品文档放心下载图23Keil调试界面点击中对应的工具按钮则可以开始调试。另外,“View”下的三个工具在调试中会经常用到如.图24所示,感谢阅读温度采集智能家居热水器“DisassemblyWindow”显示C“Watch&CallStackWindow”可以谢谢阅读显示程序中某一变量的值;“MemoryWindow”可以显示内存中某一地址的值。谢谢阅读图24三个常用的调试工具7系统的安装与调试7.1安装步骤1.检查元件的好坏感谢阅读谢谢阅读防止出现错误焊件后不便改正。2.放置、焊接各元件精品文档放心下载感谢阅读间不要超过10s,注意芯片的安装方向。7.2电路的调试谢谢阅读精品文档放心下载象还有很多就不一一列举了。7.3本章小结本章的主要内容是电路的测试和调试注意事项温度采集智能家居热水器结论本设计采用51单片机+DS18B20温度传感器+继电器加热+数码管显示+功能按键组成。感谢阅读DS18B20感谢阅读精品文档放心下载精品文档放心下载精品文档放心下载测精确到0.1EEPOM谢谢阅读有连加、减功能。谢谢阅读方案正确、可行,各项指标稳定、可靠。参考文献1曹巧媛主编.单片机原理及应用(第二版).北京:电子工业出版社,2002精品文档放心下载2全国大学生电子设计竞赛组委会编.第五届全国大学生电子设计竞赛获奖作品选编(2001),北京:精品文档放心下载北京理工大学出版社,20033何力民编.单片机高级教程.北京:北京航空大学出版社,2000精品文档放心下载4金发庆等编.传感器技术与应用.北京机械工业出版社,2002感谢阅读551单片机C感谢阅读20086谭浩强著.C程序设计.北京:清华大学出版社,2007;精品文档放心下载7王忠飞,胥芳.MCS-51单片机原理及嵌入式系统应用[M].西安:西安电子科技大学出版社,精品文档放心下载2007.P268-2738PeterVanDerLinden著,徐波译.C专家编程,人民邮电出版社,2003感谢阅读附录1整体电路原理图温度采集智能家居热水器附录2部分源程序#include<reg52.h>#include"eepom52.h"#defineucharunsignedchar#defineuintunsignedint/***********************************谢谢阅读本设计系统是18b20温度报警系统数码管显示,可设置温度上限高温报警和下限低温报警,报警温度可精确到0.1度,并具有掉电保存功能,数据保存精品文档放心下载在单片机内部EEPOM中,进入设置界面后如果没有键感谢阅读按下系统会在30秒后自动退出设置界面,人性化的按感谢阅读键设置,按键还具有连加、减功能。**********************************/谢谢阅读//数码管段选定义789ucharcodesmg_du[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,精品文档放心下载0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff};//断码谢谢阅读//数码管位选定义ucharcodesmg_we[]={0xef,0xdf,0xbf,0x7f};精品文档放心下载uchardis_smg[8]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8};精品文档放心下载ucharsmg_i=3;//显示数码管的个位数sbitdq=P2^4;//18b20IO口的定义精品文档放心下载sbitrelay=P2^5;//继电器IO口定义感谢阅读sbitbeep=P2^3;//蜂鸣器IO口定义感谢阅读uchara_a;uinttemperature;//bitflag_300ms;ucharkey_can;//按键值的变量ucharmenu_1;//菜单设计的变量uintt_high=300,t_low=100;bitflag_lj_en;//按键连加使能bitflag_lj_3_en;//按键连3次连加后使能加的数就越大了精品文档放心下载温度采集智能家居热水器ucharkey_time,flag_value;//用做连加的中间变量感谢阅读bitkey_500ms;ucharflag_clock;ucharzd_break_en,zd_break_value;//自动退出设置界面精品文档放心下载/***********************1ms延时函数*****************************/谢谢阅读voiddelay_1ms(uintq){uinti,j;for(i=0;i<q;i++)for(j=0;j<120;j++);}/***********************小延时函数*****************************/感谢阅读voiddelay_uint(uintq){while(q--);}/***********************数码显示函数*****************************/感谢阅读voiddisplay(){uchari;for(i=0;i<smg_i;i++){P3=smg_we[i];//位选P1=dis_smg[i];//段选delay_1ms(1);P3=0xff;//位选P1=0xff;//消隐}}/******************把数据保存到单片机内部eepom中******************/感谢阅读voidwrite_eepom(){温度采集智能家居热水器SectorErase(0x2000);byte_write(0x2000,t_high%256);感谢阅读byte_write(0x2001,t_high/256);精品文档放心下载byte_write(0x2002,t_low%256);谢谢阅读byte_write(0x2003,t_low/256);谢谢阅读byte_write(0x2055,a_a);}/******************把数据从单片机内部eepom中读出来*****************/感谢阅读voidread_eepom(){t_high=byte_read(0x2001);t_high<<=8;t_high|=byte_read(0x2000);感谢阅读t_low=byte_read(0x2003);t_low<<=8;t_low|=byte_read(0x2002);a_a=byte_read(0x2055);}/***********************18b20初始化函数*****************************/感谢阅读voidinit_18b20(){bitq;dq=1;//把总线拿高delay_uint(1);//15usdq=0;//给复位脉冲delay_uint(80);//750usdq=1;//把总线拿高等待delay_uint(10);//110usq=dq;//读取18b20初始化信号delay_uint(20);//200usdq=1;//把总线拿高释放总线}温度采集智能家居热水器/*************写18b20内的数据***************/精品文档放心下载voidwrite_18b20(uchardat){uchari;for(i=0;i<8;i++){//写数据是低位开始dq=0;//把总线拿低写时间隙开始dq=dat&0x01;//向18b20总线写数据了感谢阅读delay_uint(5);//60usdq=1;//释放总线dat>>=1;}}/*************读取18b20内的数据***************/感谢阅读ucharread_18b20(){uchari,value;for(i=0;i<8;i++){dq=0;//把总线拿低读时间隙开始value>>=1;//读数据是低位开始dq=1;//释放总线if(dq==1)//开始读写数据value|=0x80;delay_uint(5);//60us读一个时间隙最少要保持60us的时间谢谢阅读}returnvalue;//返回数据}/*************读取温度的值读出来的是小数***************/谢谢阅读uintread_temp(){uintvalue;温度采集智能家居热水器ucharlow;//18b20精品文档放心下载的时序init_18b20();//初始化18b20write_18b20(0xcc);//跳过64位ROM谢谢阅读write_18b20(0x44);//启动一次温度转换命令感谢阅读delay_uint(50);//500usinit_18b20();//初始化18b20write_18b20(0xcc);//跳过64位ROM谢谢阅读write_18b20(0xbe);//发出读取暂存器命令谢谢阅读EA=0;low=read_18b20();//读温度低字节value=read_18b20();//读温度高字节感谢阅读EA=1;value<<=8;//把温度的高位左移8位value|=low;//把读出的温度低位放到value的低八位中感谢阅读value*=0.625;//转换到温度值小数returnvalue;//返回读出的温度带小数}/*************定时器0初始化程序***************/感谢阅读voidtime_init(){EA=1;//开总中断TMOD=0X01;//定时器0、定时器1工作方式1精品文档放心下载ET0=1;//开定时器0中断TR0=1;//允许定时器0定时}/****************独立按键处理函数************************/精品文档放心下载voidkey(){staticucharkey_new=0,key_old=0,key_value=0;感谢阅读if(key_new==0){//按键松开的时候做松手检测温度采集智能家居热水器if((P2&0x0f)==0x0f)key_value++;elsekey_value=0;if(key_value>=10){write_eepom();key_value=0;key_new=1;flag_lj_en=0;//关闭连加使能flag_lj_3_en=0;//关闭3秒后使能精品文档放心下载flag_value=0;//清零}}else{if((P2&0x0f)!=0x0f)key_value++;//按键按下的时候elsekey_value=0;if(key_value>=7){key_value=0;key_new=0;flag_lj_en=1;//连加使能zd_break_en=1;//自动退出设置界使能zd_break_value=0;//自动退出设置界变量清零感谢阅读}}key_can=20;if(key_500ms==1){温度采集智能家居热水器key_500ms=0;zd_break_en=1;//自动退出设置界使能zd_break_value=0;//自动退出设置界变量清零谢谢阅读key_new=0;key_old=1;}if((key_new==0)&&(key_old==1))精品文档放心下载{switch(P2&0x0f){case0x0e:key_can=4;break;//得到k1键值谢谢阅读case0x0d:key_can=3;break;//得到k2键值精品文档放心下载case0x0b:key_can=2;break;//得到k3键值谢谢阅读case0x07:key_can=1;break;//得到k4键值感谢阅读}}key_old=key_new;}/****************按键处理数码管显示函数***************/精品文档放心下载voidkey_with(){if(key_can==4){menu_1++;if(menu_1>=3){menu_1=0;}if(menu_1==0){dis_smg[0]=smg_du[temperature%10];//取温度的小数显示谢谢阅读dis_smg[1]=smg_du[temperature/10%10]&0x7f;//取温度的个位显示精品文档放心下载温度采集智能家居热水器dis_smg[2]=smg_du[temperature/100%10];//取温度的十位显示感谢阅读smg_i=3;}if(menu_1==1){dis_smg[0]=smg_du[t_high%10];//取小数显示谢谢阅读dis_smg[1]=smg_du[t_high/10%10]&0x7f;//取个位显示感谢阅读dis_smg[2]=smg_du[t_high/100%10];//取low十位显示精品文档放心下载dis_smg[3]=0x89;smg_i=4;}if(menu_1==2){dis_smg[0]=smg_du[t_low%10];//取low小数显示谢谢阅读dis_smg[1]=smg_du[t_low/10%10]&0x7f;//取个位显示精品文档放心下载dis_smg[2]=smg_du[t_low/100%10];//取十位显示精品文档放心下载dis_smg[3]=0xc7;smg_i=4;}}if(menu_1==1)//设置高温报警{if(key_can==3){if(flag_lj_3_en==0)t_high++;//按键按下未松开自动加三次elset_high+=10;//按键按下未松开自动加三次之后每次自动加10精品文档放心下载if(t_high>990)t_high=990;dis_smg[0]=smg_du[t_high%10];//取小数显示谢谢阅读dis_smg[1]=smg_du[t_high/10%10]&0x7f;//取个位显示谢谢阅读温度采集智能家居热水器dis_smg[2]=smg_du[t_high/100%10];//取十位显示谢谢阅读dis_smg[3]=0x89;//H}if(key_can==2){if(flag_lj_3_en==0)t_high--;//按键按下未松开自动加三次elset_high-=10;//按键按下未松开自动减三次之后每次自动减10精品文档放心下载if(t_high<=t_low)t_high=t_low+1;dis_smg[0]=smg_du[t_high%10];//取小数显示精品文档放心下载dis_smg[1]=smg_du[t_high/10%10]&0x7f;//取个位显示谢谢阅读dis_smg[2]=smg_du[t_high/100%10];//取十位显示感谢阅读dis_smg[3]=0x89;//H}}if(menu_1==2)//设置低温报警{if(key_can==3){if(flag_lj_3_en==0)t_low++;elset_low+=10;if(t_low>=t_high)t_low=t_high-1;dis_smg[0]=smg_du[t_low%10];//取小数显示谢谢阅读dis_smg[1]=smg_du[t_low/10%10]&0x7f;//取个位显示谢谢阅读dis_smg[2]=smg_du[t_low/100%10];//取十位显示精品文档放心下载dis_smg[3]=0xc7;//L}温度采集智能家居热水器if(key_can==2){if(flag_lj_3_en==0)t_low--;elset_low-=10;if(t_low<=10)t_low=10;dis_smg[0]=smg_du[t_low%10];//取小数显示感
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新版承揽加工合同书范文
- 2025法人向公司借款合同
- 2025年度温室大棚租赁与现代农业技术合作合同3篇
- 2025年度农村出租房租赁与农村环保产业合作合同
- 二零二五年度电影宣传推广与营销合同2篇
- 二零二五年度股权代持服务协议:涉及企业并购的综合性协议3篇
- 二零二五年度农村宅基地房屋租赁与农村文化传承合同
- 二零二五年度展台搭建与展览展示合同3篇
- 二零二五年度法人代表变更与股权收购协议3篇
- 2025年度液压设备维修保养及安全检测合同3篇
- 《测土配方施肥》课件
- 人教版2024-2025学年第一学期八年级物理期末综合复习练习卷(含答案)
- 职业健康检查管理制度
- 电梯维保管理体系手册
- 2024年国家电网招聘之通信类题库及参考答案(考试直接用)
- 第12课《词四首》课件+2023-2024学年统编版语文九年级下册
- 2024年R1快开门式压力容器操作证考试题库及答案
- 《数学物理方法》期末测试卷及答案
- 《上帝掷骰子吗:量子物理史话》导读学习通超星期末考试答案章节答案2024年
- 铁路工务劳动安全
- 沪科版九年级物理下册教案全册
评论
0/150
提交评论