家用太阳能热水器智能控制系统_第1页
家用太阳能热水器智能控制系统_第2页
家用太阳能热水器智能控制系统_第3页
家用太阳能热水器智能控制系统_第4页
家用太阳能热水器智能控制系统_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

摘要如何很好的节约和利用能源,特殊是可持续能源,始终是人类所面临的问题。所以探讨智能化家庭住宅里的能源如何被更有效地节约和利用,也有着特别现实和长远的意义。而家用太阳能热水器就是一个节约能源,有效利用能源的典型。该太阳能热水器智能限制系统主要是由AT89C51单片机限制、DS18B20温度传感器、独立键盘、LED数码管和报警系统五大部分组成。该系统能测量并显示水温、设置水温的范围,假如水温不处于所设置水温的范围则报警。同时还能对水位进行设置及加水,预先设置好须要加水的水位段数,单片机会依据这个数来进行判别是否须要加水。通过Protues软件仿真以上所述的功能都能正常实现。关键词太阳能热水器,传感器,AT89C51,温度限制,水位限制ABSTRACTToeconomizeandutilizeenergyresource,especiallythelastingenergyresource,isaproblemthathumankindhasfaced.Soitissorealisticandsignificanttoresearchhowtoeconomizeandutilizeenergyresourceishomeusing.AndtheSolarHeaterisagoodexampleineconomizingandutilizingenergyresource.Thedesignofsolarwaterheatersintelligentcontrolsystemismainlycomposedofsingle-chipAT89C51,DS18B20temperaturesensor,anindependentkeyboard,LEDandalarmsystem.Thesystemcanmeasureanddisplaywatertemperature,settherangeofwatertemperature,ifthewatertemperatureisnotintherangeofsettingtemperatureisalarming.Atthesametime,youcansetthewaterlevelandaddwater,first,needtosetupthewaterlevelabovethewater,single-chipwilldeterminewhetheraddthewaterornotaccordingtothenumber.TheusesofProtuessoftwarecanimitablecometruethefunctions.KeywordsSolarEnergyHeater,Sensor,AT89C51,TheTemperatureControl,TheControlofWaterL目录摘要 IABSTRACT II1绪论 12太阳能热水器介绍 22.1太阳能热水器的概述 22.2太阳能热水器的分类 22.3我国太阳能热水器发展历史 33系统方案设计 43.1方案一 43.2方案二 43.3方案比较 44硬件设计 64.1AT89C51介绍 64.2测温电路设计 84.3水位监测电路设计 124.4键盘电路设计 134.5显示电路设计 174.6加热和加水电路的设计 194.7报警电路设计 214.8电源电路设计 225软件设计 235.1程序设计分析 235.2程序流程图 236仿真及调试 276.1程序编译 27KEILC51介绍 276.1.2编译过程 276.2电路仿真 28结论 30参考文献 29附录A:电路仿真图 30附录B:源程序 30致谢 371绪论随着全球人口和经济的不断增长,能源运用带来的环境问题及其诱因渐渐为人所相识,“低碳经济”这一概念起先进入人们的视野。人们在大力发展太阳能产业。能源问题将更为突出:(1)从长远来看,全球已探明石油储量只能用到2020年,自然气也只能持续到2040年左右,即使储量丰富的煤炭资源也只能持续二三百年。(2)环境污染。(3)温室效应引起全球气候变更。因此,人类在解决上述能源问题,实现可持续发展,只能依靠科技进步,大规模开发利用可再生干净能源。太阳能具有:(1)储量的“无限性”。(2)太阳能对于地球上的绝大多数地区具有存在的普遍性,可就地取用。(3)开发利用时几乎不产生任何污染。鉴于此,太阳能必将在世界能源结构转换中担纲重任,成为志向的替代能源。在世界范围内,太阳能热水器技术已经很成熟,并已形成行业,正在以优良的性能不断的冲击电热水器市场和燃气热水器市场。2000年太阳能热水器取代47000套家用电热水器;2000年日本太阳能热水器的拥有量将翻一番;以色列更是明文规定,全部新建房屋必需配备太阳能热水器。目前,我国是世界上太阳能热水器生产量和销售量最大的国家。能源问题与平安问题是现代社会各界普遍关注的焦点之一。目前市场上存在三种样式的热水器:电热水器、燃气热水器和太阳能热水器。近年来,在一氧化碳中毒事故中,由燃气热水器造成的约占1/3;电热水器的大规模用电,并不能给人们的正常生活带来便利,作为后来者的太阳能热水器,因其平安性好、节能、绿色环保等优点,近几年呈现出爆发式的发展趋势。选择太阳能热水器这个课题,可以让我更好的认知可持续发展问题,看清目前的能源现状,以及各国在节能能源上的措施,在太阳能革新上运用的新技术。此外,太阳能热水器已经走进千家万户,限制系统是太阳能的核心,可以尽可能做到节能环保,作这样一个设计,不仅可以考察自己高校四年的专业课的理论与动手实践实力,产品也具有肯定的市场前景。2太阳能热水器介绍2.1太阳能热水器的概述太阳能热水器把太阳光能转化为热能,将水从低温度加热到高温度,以满意人们在生活、生产中的热水运用。太阳能热水器是由全玻璃真空集热管、储水箱、支架及相关附件组成,把太阳能转换成热能主要依靠玻璃真空集热管。集热管受阳光照耀面温度高,集热管背阳面温度低,而管内水便产生温差反应,利用热水上浮冷水下沉的原理,使水产生微循环而达到所需热水。2.2太阳能热水器的分类(1)从集热部分来分:真空玻璃管太阳能热水器:目前吸热效率最高的集热部分,优点在于不须要在集热部分在增加保温层,而且现在的真空玻璃管无论在抗高温,抗打击和保温上,性能都是一流的,也被绝大部分太阳能热水器生产厂家所采纳。其缺点在于体积比较浩大,管中简洁集结水垢。金属平板太阳能热水器:是在传热性能极佳的金属片上,覆盖上吸热涂层,利用金属的传热性,将汲取的热量传于水箱中。其有点是外观美观,安装便利,可以做成平板,而且不简洁损坏。缺点在于:保温要花很大的代价,成本高,间接的就是增加消费者负担。(2)从结构分:一般式太阳能热水器:就是将真空玻璃管干脆插入水箱中,利用加热水的循环,使得水箱中的水温上升,这是目前厂家都采纳的。也是一只流行到现在的最常规的热水器。一般改类热水器只有顶层能用,除非顶层用户和你楼下的关系特铁,而且屋顶的面积是有限的。分体式热水器:分体式热水器是为了解决不是顶层用户也能运用太阳能热水器而诞生的。分体式循环有2种,一种是靠水的自然循环,这种热水器热交换效率很低,远远不能满意用水要求;另一种是靠泵循环热交换,这也是为了解决自然循环效率低的问题,运用泵循环,可以明显改善水的热交换。(3)从水箱受压来来分:承压式太阳能热水器:目前,无论是哪一种分体式热水器,都有一个致命的缺点,必需运用承压式水箱,这是全部分体式热水器的基本思路,这就干脆考验你的集热部分的密封性能;还有制造承压水箱成本极高,也存在平安性问题,一般要求耐压7个大气;而且循环效果不是很志向。虽然解决了水的循环问题和运用水时的便利性。非承压式太阳能热水器:目前装在屋顶的一般太阳能热水器都是属于非承压式热水器,它的水箱有一根管子与大气相通,是利用屋顶和家里的高度落差,使用水时产生压力。其平安性,成本,运用寿命都比承压式要显著得多。2.3我国太阳能热水器发展历史我国自78年引进全玻璃真空集热管样管以来,经过20多年努力,攻克了热压封等很多技术难关,已经建立了拥有自主学问产权的现代化全玻璃真空集热管产业,用于生产集热管的磁控溅射镀膜机已有745台,产品质量达到世界先进水平,产量雄居世界首位。1978年中国诞生第一台太阳能热水器,到1986年卧式磁控溅射镀膜机的设计制造,是在政策扶持下的探讨开发阶段。1987年,我国制造了第一支全玻璃真空集热管。在之后的几年里,全玻璃和热管式真空管集热器实现了产业化,产业规模达到中试水平,为下一阶段产业的规模化奠定了良好的基础,成为产业的孕育发展阶段。1993年太阳能产业进入初级发展阶段:由于成果转化须要很长一段时间的磨合,特殊是受技术人员缺乏的影响,此阶段的产品质量有待于进一步提高,整体来讲,发展速度较为缓慢。这时候以山东力诺集团为主的真空管生产企业的产品占了真空管生产绝大部分市场。1997-2001年太阳能产业得到高速发展,渐渐形成北京、鲁东、泰安、扬州、海宁等5个产业基地,并以此向四周不断辐射,产能得以快速提升。继2004年,太阳雨将中国的真空管太阳能产品第一次带出国门,到2008年上半年出口80个国家、销量接着以两倍速增长,力诺瑞特、桑乐、皇明等中国太阳能光热行业的龙头企业们也纷纷进军国际市场。除这些龙头企业外,以生长于常州和浙江一带为代表的部分中小企业,也在循着早年“浙商”闯荡世界的模式,携真空管产品的独有优势和他们惯有的的低价思维,早已经“漂洋过海”,在国际太阳能光热市场上形成了肯定的冲击力;还有一些原来只专注于国内市场的企业,也起先参与广交会或不惜成本参与国外的一些专业性展会,以寻求在国际市场分得一杯羹。3系统方案设计3.1方案一系统温度采集选用PTl000铂电阻温度传感器,PT100是铂热电阻,阻值随温度变更而变更。PT后的100表示它在0℃时阻值为100欧姆,在100℃时它阻值约为138.5欧姆。工业原理:当PT100在0℃的时候他的阻值为100欧姆,阻值会随着温度上升成匀速增涨。采集的电压信号经集成运放LM324放大到2.O一5.0伏,转换结果由单片机处理。水位检测采纳XYC-1型压力水位变送器进行液位值连续采集。XYC-1型压力式液位变送器内部采纳进口高精度扩散硅敏感元件作为测量元件,敏感测量元件封装在全不锈钢探头里,通过高强度防水通气电缆与外部放大电路连接,采纳干脆驱动四位七段数码管显示,通过独立式键盘进行温度和水位限制,通过软件手段实现按键消抖。报警电路由一个蜂鸣器构成,结构简洁。加热部分采纳光电隔离与协助加热电路。3.2方案二系统的温度采集选用采纳温度传感器DS18B20,它是美国Dallas半导体公司生产的数字化温度传感器DS18B20,它支持“一线总线”接口的温度传感器,全部传感元件及转化电路集成在形如一只三极管的集成电路内。我们可以采纳DS18B20采集温度,再进行温度数值转化,再在显示电路上显示。外围电路只需通过DS18B20进行接收温度,一个显示电路,一个报警电路。软件部分只须要采集温度,对温度进行转换,再用显示电路将其显示出来。很明显,环境对DS18B20影响不是很大,同时DS18B20的测量精度稳定并可用软件设置,接线简洁,大大的为单片机节约了数据口。3.3方案比较本设计主要是从温度传感器进行考虑。传统的测温元件有热电偶和热电阻,但它们测出的一般都是电压,再转换成对应的温度,须要较多的外部硬件,电路及软件的调试较为困难,制作难度高。从以上两种方案中,很简洁看出采纳方案二所设计的电路相对来说较为简洁,采纳一种智能温度传感器DS18B20作为检测元器件,测温范围-55℃~125℃,辨别率最大可达本设计对水位检测要求不高,只须知道也许水位就可以了,因此从功能、材料、价格多方面考虑,只需用水位传感器检测出水位段即可。综上所述,最终确定采纳方案二作为设计方案。本设计方案系统可由主限制器(AT89C51)、显示电路、测温器件(DS18B20)、抽水电动机、发光二极管报警、按键、水位显示组成。总体结构框图如图3.1所示:图3.1总体设计结构框图4硬件设计4.1AT89C51介绍AT89C51是带4K字节闪耀可编程可擦除只读存储器(EPEROM)的低电压、高性能CMOS8位微处理器(俗称单片机)。该单片机与工业标准的MCS-51型机的指令集和输出引脚兼容。AT89C51将多功能8位CPU和闪耀存储器组合在单个芯片中,为很多嵌入式限制供应了敏捷性高且价格低廉的方案。AT89C51的主要特性如下:(1)寿命达1000写/擦循环;(2)数据保留时间:10年;(3)全静态工作:0Hz-24MHz;(4)三级程序存储器锁定;(5)128*8位内部RAM;(6)32可编程I/O线;(7)2个16位定时器/计数器;(8)5个中断源;(9)可编程串行通道;(10)低功耗闲置和掉电模式;(11)片内振荡器和时钟电路;AT89C51引脚排列如图4.1所示:图4.1AT89C51引脚图VCC(40):+5V.GND(20):接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可汲取8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必需被拉高。

P1口:P1口是一个内部供应上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平常,将输出电流,这是由于内部上拉的原因。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的原因。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和限制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的原因。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平常间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平常,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要留意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。假如微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平常,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。留意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平常,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

4.2测温电路设计(1)DS18B20的引脚图及方框图DS18B20的外形及管脚排列图如下图4.2所示。=1\*GB3①GND地信号。=2\*GB3②DQ数据输入/输出引脚。用在寄生电源下,可向器件供应电源。=3\*GB3③VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必需接地。图4.2DS18B20外形及引脚排列DS18B20的方框图如图4.3所示:图4.3DS18B20方框图(2)DS18B20主要性能和功能特性描述1)DS18B20主要性能=1\*GB3①独特的单线接口方式,DS18B20在与微处理器连接时仅须要一条口线即可实现微处理器与DS18B20的双向通讯。=2\*GB3②测温范围-55℃~+125℃,固有测温辨别率0.5℃。=3\*GB3③支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,假如数量过多,会使供电电源电压过低,从而造成信号传输的不稳定,实现多点测温。=4\*GB3④工作电源:3-5V/DC。=5\*GB3⑤在运用中不须要任何外围元件。=6\*GB3⑥测量结果以9-12位数字量方式串行传送。=7\*GB3⑦不锈钢爱护管直径Φ6。=8\*GB3⑧用于DN15-25,DN40-DN250各种介质工业管道、小空间设备测温。=9\*GB3⑨标准安装螺纹M10X1,M12X1.5,G1/2任选。=10\*GB3⑩PVC电缆干脆出线或德式球型接线盒出线,便于与其它设备连接。2)DS18B20功能特性描述DS18B20温度传感器内部存储器还包括一个高速暂存RAM和一个非易失性可电擦除的EERAM。高速暂存RAM结构为9字节存储器,结构如表4.1所示。头2个字节包含测得温度信息,第3、4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑第9字节读出前面全部8字节CRC码,可用来检验数据,从而保证通信数据的正确性。第5字节为配置寄存器,它的内容用于确定温度值的数字转换辨别率。DS18B20工作时寄存器中的辨别率转换为相应精度的温度数值。该字节各位的定义如表4.2所示。低5位都为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户可改动,R1和R0确定温度转换的精度位数,来设置辨别率。如表4.3所示:表4.1高速暂存RAM字节数123456789存储信息温度LSB温度MSBTH用户字节1TL用户字节2配置寄存器保留保留保留CRC表4.2第5寄存器R1R0辨别率/位温度最大转向时间/ms00993.750110187.510113751112750表4.3DS18B20温度转换时辰表TMR1R011111由表4.2、4.3可见,DS18B20辨别率越高,所须要的温度数据转换时间越长。当DS18B20接收到温度转换吩咐后,起先启动转换。转换后,温度值就以16位带符号的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625℃/LSB形式表示。DS18B20中的温度传感器可完成对温度的测量,以12位转化为例。其中S为符号位。DS18B20的温度值格式如表4.4所示:表4.4DS18B20温度值格式表LSByteBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0MSByteBit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8SSSSS当符号位S=0时,表示测得的温度值为正值,可以干脆将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值。表4.5是部分温度值对应的二进制度数据。表4.5部分温度对应值表温度℃二进制表示十六进制表示+12507D0H+850550H+25.062500000001100100000191H+10.125000000001010000100A2H+0.500000000000000100008H000000000000010000000H-0.5FFF8H-10.125FF5EH-25.025FE6FH3)DS18B20供电方式=1\*GB3①DS18B20寄生电源供电方式电路DS18B20寄生电源供电电路,如图4.4所示,要想使DS18B20进行精确的温度转换,I/O线必需保证在温度转换期间供应足够的能量,由于每个DS18B20在温度转换期间工作电流达到1mA,当几个温度传感器挂在同一根I/O线上进行多点测温时,靠上拉电阻是无法供应足够的能量,会造成无法转换温度或温度误差极大。因此,只适用于单一温度传感器测温,也不宜采纳电池供电系统,并且电源电压必需保证是5V。当电源电压下降时,会使测量的误差变大。图4.4DS18B20寄生电源供电电路=2\*GB3②DS18B20的外部电源供电方式DS18B20外部供电有单点测温电路和多点测温电路,单点测温电路如图4.5所示。此时I/O线不须要强上拉电压,同时在总线上可以挂接多个DS18B20传感器,组成多点测温系统。但要留意在外部供电的方式下DS18B20的GND引脚不能悬空,否则读取的温度总是85℃图4.5DS18B20外部供电单点测温电路比较上述两种供电方式后认为外部电源供电方式对电源要求比电源供电方式优越些且稳定性好,由于是家用,温度精度不需太过精准,故在此设计中采纳外部电源供电方式供电单点测温电路。(3)测温电路的总成DS18B20是智能温度传感器,它的输入/输出采纳数字量,以单总线技术,接收主机发送的吩咐,依据DS18B20内部的协议进行相应的处理,将转换的温度以串口发送给主机。主机依据通信协议用一个IO口模拟DS18B20的时序,发送吩咐(初始化吩咐、ROM吩咐、功能吩咐)给DS18B20,并读取温度值,在内部进行相应的数值处理,用图形液晶模块显示各点的温度。当某点温度超过设置值时,报警器起先报警,从而实现了对各点温度的实时监控。如图4.6所示:图4.6测温电路的设计4.3水位监测电路设计水位限制器是指通过机械式或电子式的方法来进行凹凸水位的限制,可以限制电磁阀、水泵等,成为水位自动限制器或水位报警器,从而来实现半自动化或者全自动化,方法有多种,依据选用不同的产品而不同。下面对电子式水位开关和浮球开关加以介绍。电子式水位开关原理是通过电子探头对水位检测,再由水位检测专用芯片对检测到信号进行处理,当被测液体到达动作点时,芯片输出高或低电平信号,再协作水位限制器,实现对液位限制。不需浮球和干簧管,外部无机械动作,耐污耐用,不怕漂移物影响,随意角度安装,竖向安装有肯定防波浪功能,相宜长时间浸在水中,工作电压是直流5-24V,很平安。这种方式较好用,耐污,寿命长,平安。浮球限制开关基本上有两种方式:一种是浮球开关带着一个大的金属球,浸在水中时浮力大,可以限制两个水位,比如水满了,浮球因为浮力而上升,带动球阀运动,使阀门关闭,停止进水,当水少了,浮球下降,阀门打开,又再进水,如此循环。这种方式较多应用在煮开水器和卫生间的冲水器上。还有一种是带干簧管的微型浮球开关,由外面带有磁性小浮球使杆里面的干簧管闭合,从而限制水位,多数应用在清水的水位限制,一般十几块钱就有交易了,但易受污物影响,不适用在污水上。其次种是电缆式浮球开关,该装置通过一弹性电线与水泵连接,可用于水塔、水池水位凹凸的自动限制和缺水爱护,允许接的用电器是220V,10A左右,平衡锤或弹性电线的某一固定点到浮筒间的电线长度,确定水位的凹凸。这种水位开关价格便宜,对于一些要求不太严格的场合适用,有肯定耐污实力。但存在这样的问题:浮球易受外界杂物影响其稳定性,特殊是纤维状的杂物缠绕而有失误,同一小水箱里不宜运用多个,否则会相缠绕。运用寿命相对短些,而且多数干脆接220V,存在肯定的平安隐患,终有一天因为电线破损而漏电电人。所以电缆式浮球开关一般有这样的警告:电源线是本装置的完整部分,一经发觉电线受损,本装置应被替换,不准对电线进行修理。综上所述,由于是家用热水器,对水位限制不要求那么精确,因此确定采纳浮球限制开关。在此设计中有两个水位段,分别是低水位、高水位。其中水位的检测是通过两个单刀单掷开关的闭合得知的并且同时用两个数码管表示出来,其结构简洁明白,如图4.7所示:图4.7水位监测电路的设计4.4键盘电路设计键盘是若干个按键的集合,它是单片机系统中极常见的输入设备。(1)键盘分类键盘可以分为非编码(独立式)键盘和编码(矩阵式)键盘。=1\*GB3①矩阵式按键单片机系统中,若使按键较多时,通常采纳矩阵式(也称行列式)键盘。矩阵式键盘由行线和列线组成,按键位于行、列线的交叉点上。矩阵式键盘中,行、列线分别连接到按键开关两端,行线通过上拉电阻接到+5V上。当无键按下时,行线处于高电平状态;当有键按下时,行、列线将导通,此时行线电平将由与此行线相连的列线电平确定。这是识别按键是否按下关键。然而,矩阵键盘中的行线、列线和多个键相连,各按键按下与否均影响该键所在行线和列线的电平,各按键间将相互影响,因此,必需将行线、列线信号协作起来作适当处理,才能确定闭合键的位置。=2\*GB3②独立式按键单片机限制系统中,往往只须要几个功能键,此时,可采纳独立式按键结构。独立式按键是干脆用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。独立式按键电路配置敏捷,软件结构简洁,但每个按键必需占用一根I/O口线,因此,在按键较多时,I/O口线奢侈较大,不宜采纳。独立式按键软件常采纳查询式结构。先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。本设计所用到的按键极少,故采纳独立式键盘。(2)键盘限制程序键盘限制程序应具备以下功能:=1\*GB3①检测有无按键按下,并实行硬件或软件措施,消退键盘按键机械触点抖动的影响。=2\*GB3②有牢靠的逻辑处理方法。每次只处理一个按键,其间对任何按键的操作对系统不产生影响,且无论一次按键时间有多长,系统仅执行一次按键功能程序。=3\*GB3③精确输出按键值(或键号),以满意跳转指令要求。机械式按键再按下或释放时,由于机械弹性作用的影响,通常伴随有肯定时间的触点机械抖动,然后其触点才稳定下来。抖动时间的长短与开关的机械特性有关,一般为5—10ms。在触点抖动期间检测按键的通与断状态,可能导致推断出错。即按键一次按下或释放被错误地认为是多次操作,这种状况是不允许出现的。为了克服按键触点机械抖动所致的检测误判,必需实行去抖动措施,可从硬件、软件两方面予以考虑。在键数较少时,可采纳硬件去抖,而当键数较多时,采纳软件去抖。(3)按键消抖通常按键所用开关为机械弹性开关,当机械触点断开、闭合时,电压信号小型如下图。由于机械触点弹性作用,一个按键开关在闭合时不会立刻稳定接通,在断开时也不会一下断开。因而在闭合及断开瞬间均伴随有一连串抖动,如下图。抖动时间的长短由按键的机械特性确定,一般为5ms~10ms。这是一个很重要的时间参数,在很多场合都要用到。按键抖动如如图4.8所示:图4.8按键抖动按键稳定闭合时间的长短则是由操作人员的按键动作确定的,一般为零点几秒至数秒。键抖动会引起一次按键被误读多次。为确保CPU对键的一次闭合仅作一次处理,必需去除键抖动。在键闭合稳定时读取键的状态,并且必需判别到键释放稳定后再作处理。按键的抖动,可用硬件或软件两种方法。由于本次设计按键极少,所以采纳硬件消抖。在键数较少时可用硬件方法消退键抖动。图4.9所示的RS触发器为常用的硬件去抖。图中两个“与非”门构成一个RS触发器。当按键未按下时,输出为1;当键按下时,输出为0。此时即运用按键的机械性能,使按键因弹性抖动而产生瞬时断开(抖动跳开B),中要按键不返回原始状态A,双稳态电路的状态不变更,输出保持为0,不会产生抖动的波形。也就是说,即使B点的电压波形是抖动的,但经双稳态电路之后,其输出为正规的矩形波。这一点通过分析RS触发器的工作过程很简洁得到验证。在单片机应用系统中,键盘扫描只是CPU的工作内容之一。CPU对键盘的响应取决于键盘的工作方式,键盘的工作方式应依据实际应用系统中CPU的工作状况而定,其选取的原则是既要保证CPU能刚好响应按键操作,又不要过多占用CPU的工作时间。通常,键盘的工作方式有三种,即编程扫描、定时扫描和中断扫描。1)编程扫描方式编程扫描方式是利用CPU完成其它工作的空余调用键盘扫描子程序来响应键盘输入的要求。在执行键功能程序时,CPU不再响应键输入要求,直到CPU重新扫描键盘为止。键盘扫描程序一般应包括以下内容:=1\*GB3①判别有无键按下。=2\*GB3②键盘扫描取得闭合键的行、列值。=3\*GB3③用计算法或查表法得到键值。=4\*GB3④推断闭合键是否释放,如没释放则接着等待。=5\*GB3⑤将闭合键键号保存,同时转去执行该闭合键的功能。2)定时扫描方式:定时扫描方式就是每隔一段时间对键盘扫描一次,它利用单片机内部的定时器产生肯定时间(例如10ms)的定时,当定时时间到就产生定时器溢出中断,CPU响应中断后对键盘进行扫描,并在有键按下时识别出该键,再执行该键的功能程序。3)中断扫描方式采纳上述两种键盘扫描方式时,无论是否按键,CPU都要定时扫描键盘,而单片机应用系统工作时,并特别常须要键盘输入,因此,CPU常常处于空扫描状态,为提高CPU工作效率,可采纳中断扫描工作方式。其工作过程如下:当无键按下时,CPU处理自己的工作,当有键按下时,产生中断恳求,CPU转去执行键盘扫描子程序,并识别键号。图4.9硬件消抖利用电容的放电延时,采纳并联电容法,也可以实现硬件消抖。如图4.10所示:图4.10硬件消抖(4)键盘电路总成综上所述,采纳浮子式开关和硬件消抖电路设计出的键盘电路如图4.11所示:图4.11键盘电路的设计4.5显示电路设计LED发光二极管,是一种固态的半导体器件,它可以干脆把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来。半导体晶片由两部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。但这两种半导体连接起来的时候,它们之间就形成一个“P-N结”。当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理。而光的波长确定光的颜色,是由形成P-N结材料的禁带宽度确定的。LED显示屏的发展可分为以下几个阶段:第一阶段为1990年到1995年,主要是单色和16级双色图文屏。用于显示文字和简洁图片,主要用在车站、金融证券、银行、邮局等公共场所,作为公共信息显示工具。其次阶段是1995年到1999年,出现了64级、256级灰度的双基色视频屏。视频限制技术、图像处理技术、光纤通信技术等的应用将LED显示屏提升到了一个新的台阶。LED显示屏限制专用大规模集成电路芯片也在此时由国内企业开发出来并得以应用。第三阶段从1999年起先,红、纯绿、纯蓝LED管大量涌入中国,同时国内企业进行了深化的研发工作,运用红、绿、蓝三原色LED生产的全彩色显示屏被广泛应用,大量进入体育场馆、会展中心、广场等公共场所,从而将国内的大屏幕带入全彩时代。随着LED原材料市场迅猛发展,表面贴装器件从2001年面世,主要用在室内全彩屏,并且以其亮度高、色调艳丽、温度低的特性,可随意调整的点间距,被不同价位需求者所接受,在短短两年多时间内,产品销售额已超过3亿元,表面贴装全彩色LED显示屏应用市场进入新世纪。目前,LED显示屏的主要制造厂商集中在日本、北美等地,我国LED制造厂商出口的份额在其中微乎其微。据不完全统计,世界上目前至少有150家厂商生产全彩屏,其中产品齐全,规模较大的公司约有30家左右。单片机中常用7段LED显示数字,7段LED分共阴级和共阳极两种,共阴级7段LED的原理图和管脚配置图如图4.12所示,共阳级7段LED的原理图和管脚配置图如图4.13所示。实际中,各个型号的7段LED的管脚配置可能不会是一样的,在实际应用中要先测试一下各个管脚的配置,再进行电路原理图的设计。图4.12共阴极数码管图4.13共阳极数码管LED的静态显示虽然有编程简洁、管理简洁等优点,但是静态显示所要占的I/O口资源很多,所以在显示的LED点较多的状况下,一般都采纳动态显示方式。在多位7段LED显示中,为了简化电路,降低成本,则将全部位的段选线并联在一起,刚好由8个I/O口来限制8个段。而公共端(共阳极/共阴极)则分别由相应的I/O口限制,以实现各个位的分时选通。本设计中须要显示预设温度和实际温度,故采纳2个2位7段LED显示,一个用于显示预设温度,另一个用于显示实际温度。这样就便于形象直观的表示出水温来。综上所述,温度显示电路的设计如图4.14所示。图4.14显示电路的设计4.6加热和加水电路的设计工业应用环境中存在着很多不小的瞬变脉冲,这些瞬变脉冲会影响到数据的传输,甚至损害互连的设备,为了能够在高速现场总线通信得到无错误的数据传输,工业系统设计工程师必须要对这些干扰进行处理,通常会运用具有绝缘隔离功能的光电耦合器来维持数据的完整性并爱护互连设备。光电隔离器亦称光电耦合器、光耦合器,简称光耦。光耦合器以光为媒介传输电信号。它对输入、输出电信号有良好的隔离作用,所以,它在各种电路中得到广泛的应用。光耦合器一般由三部分组成:光的放射、光的接收及信号放大。输入的电信号驱动发光二极管,使之发出肯定波长的光,被光探测器接收而产生光电流,再经过进一步放大后输出。这就完成了电—光—电的转换,从而起到输入、输出、隔离的作用。由于光耦合器输入输出间相互隔离,电信号传输具有单向性等特点,因而具有良好的电绝缘实力和抗干扰实力。又由于光耦合器的输入端属于电流型工作的低阻元件,因而具有很强的共模抑制实力。所以,它在长线传输信息中作为终端隔离元件可以大大提高信噪比。在计算机数字通信及实时限制中作为信号隔离的接口器件,可以大大增加计算机工作的牢靠性。光耦合器的主要优点是:信号单向传输,输入端与输出端完全实现了电气隔离,输出信号对输入端无影响,抗干扰实力强,工作稳定,无触点,运用寿命长,传输效率高。光耦合器是70年头发展起来产新型器件,现已广泛用于电气绝缘、电平转换、级间耦合、驱动电路、开关电路、斩波器、多谐振荡器、信号隔离、级间隔离、脉冲放大电路、数字仪表、远距离信号传输、脉冲放大、固态继电器(SSR)、仪器仪表、通信设备及微机接口中。在单片开关电源中,利用线性光耦合器可构成光耦反馈电路,通过调整限制端电流来变更占空比,达到精密稳压目的。光电隔离电路的作用是在电隔离的状况下,以光为煤介传送信号,对输入和输出电路可以进行隔离。因而能有效地抑制系统噪声,消退接地回路的干扰,有响应速度较快、寿命长、体积小耐冲击等好处,使其在强-弱电接口,特殊是在微机系统的前向和后向通道中获得广泛应用。光电耦合器如图4.15所示,图中1/2是红外线发光管,4/5/6是光电三极管。加水电路部分的主要思路是通过单片机的端口限制电磁阀的通断从而限制流量以达到限制水位的目的。电磁阀是用来限制流体方向自动化基础元件,属于执行器;通常用于机械限制和工业阀门上,对介质方向进行限制,从而达到对阀门开关的限制。电磁阀工作原理:电磁阀里有密闭的腔,在不同位置开有通孔,每个孔都通向不同的油管,腔中间是阀,两面是两块电磁铁,哪面的磁铁线圈通电阀体就会被吸引到哪边,通过限制阀体的移动来拦住或漏出不同的排油的孔,而进油孔是常开的,液压油就会进入不同的排油管,然后通过油的压力来推动油缸的活塞,活塞又带动活塞杆,活塞杆带动机械装置动。这样通过限制电磁铁的电流通断就限制了机械运动。电磁阀从原理上分为三大类:(1)直动式电磁阀原理:通电时,电磁线圈产生电磁力把关闭件从阀座上提起,阀门打开;断电时,电磁力消逝,弹簧把关闭件压在阀座上,阀门关闭。特点:在真空、负压、零压时能正常工作,但通径一般不超过25mm。(2)分步直动式电磁阀原理:它是一种直动和先导式相结合的原理,当入口与出口没有压差时,通电后,电磁力干脆把先导小阀和主阀关闭件依次向上提起,阀门打开。当入口与出口达到启动压差时,通电后,电磁力先导小阀,主阀下腔压力上升,上腔压力下降,从而利用压差把主阀向上推开;断电时,先导阀利用弹簧力或介质压力推动关闭件,向下移动,使阀门关闭。特点:在零压差或真空、高压时亦能工作,但功率较大,要求必需水平安装。(3)先导式电磁阀原理:通电时,电磁力把先导孔打开,上腔室压力快速下降,在关闭件四周形成上低下高的压差,流体压力推动关闭件向上移动,阀门打开;断电时,弹簧力把先导孔关闭,入口压力通过旁通孔快速腔室在关阀件四周形成下低上高的压差,流体压力推动关闭件向下移动,关闭阀门。特点:流体压力范围上限较高,可随意安装,但必需满意流体压差条件。综上所述,加热和加水电路设计如图4.15所示:图4.15加热和加水电路的设计4.7报警电路设计本设计中由于是用于家用热水器,考虑到成本问题,故采纳发光二极管报警,相较蜂鸣器而言,既降低了成本,也使设计简洁化。图4.16中7407是六正向高压缓冲器/驱动器。它具有缓冲功能,同时也可以提高电流的驱动实力。7407有两种接法:(1)当电路共阳接法时,7407主要起着缓冲的作用,就是缓冲单片机的承受实力,假如,没有7407,那么单片机承受的电流能实力很小,那么的工作电流就受到了限制,亮度不够亮,而加上7407就可以缓冲单片机的灌电流,从而,可以减小限流电阻的值,是流过二极管的电流增加,从而灯变的更亮。(2)当电路共阴极接法时,即将电源变成接地,二极管反接过来,这是单片机上拉电流被7407放大,来驱动灯。综上所述,报警电路如图4.16所示:图4.16报警电路图4.8电源电路设计本设计中除了市电AC220V外,均采纳DC5V电源,因此只须要设计5V电源即可。该电路输入家用220v沟通电,经过全桥整流,稳压后输出稳定的5v直流电。电源电路采纳LM7805集成稳压器作为稳压器件,用典型接法,220V电源整流滤波后送入LM7805稳压,在输出端接一个470U和0.1U电容进一步滤除纹波,得到5V稳压电源。电路设计如图4.17所示:图4.175V直流电源设计5软件设计5.1程序设计分析该太阳能热水器的工作流程是:开机进行温度水温设定,并在数码管上进行显示,然后通过浮子式水位计采集的实际水位与设定水位进行比较,假如水位较设定的水位低的话,进行加水,假如水位超过高水位或过低水位,进行水位的报警,接下来通过DS18B20采集到实际水温柔设定的水温进行比较,当实际水温小于设定的水温的时候,进行加热,直至水温达到设定值。5.2程序流程图本设计系统整体流程图如图5.1所示:起先起先对LED进行初始化扫描键盘执行键盘操作显示温度水位是否低于预设值打开电磁阀关闭电磁阀YESNO图5.1程序流程图6仿真及调试6.1程序编译单片机的开发除了须要硬件支持以外,同样离不开软件。CPU真正可执行的是机器代码,汇编语言或C语言等高级语言通过转换成机器码才能被执行。本设计采纳的是C语言在Keil软件上编程,然后将源代码转换成机器码,再与Protues仿真软件上的电路图相连接,从而实现太阳能热水器智能限制的电路仿真。本设计采纳的是KeilC51来编译程序。KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再运用C来开发,体会更加深刻。KEILC51介绍(1)系统概述KeilC51软件供应丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率特别之高,多数语句生成的汇编代码很紧凑,简洁理解。在开发大型软件时更能体现高级语言的优势。下面具体介绍KeilC51开发系统各部分功能和运用。(2)KeilC51单片机软件开发系统的整体结构C51工具包的整体结构,uVision与Ishell分别是C51forWindows和forDos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编译器编辑C或汇编源文件。然后分别由C51及C51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成肯定目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51运用进行源代码级调试,也可由仿真器运用干脆对目标板进行调试,也可以干脆写入程序存贮器如EPROM中。编译过程(1)在Windows下运行KeiluVisiion2软件,进入KeiluVisiion2开发环境。(2)在KeiluVisiion2选择Project/NewPreject…,建立一个新的项目工程,给工程项目取名为TYN,然后保存。(3)紧接着自动弹出器件选择窗,选择Atmel公司的AT89C51。(4)在KeiluVisiion2中选择File/New,打开程序编辑器,输入程序,检查无误后保存文件(扩展名.asm)在工程项目相同的书目中。保存后汇编指令中的关键字以蓝色显示。(5)在PrejectWorkspace窗口中,选择SourceGroup1条目并单击右键,在弹出的菜单选择AddFilestoGroup‘SourceGroup1’,加入刚才保存的汇编程序文件TYN.asm。选完后单击Close退出。(6)在ProjectWorkspace窗口中,选择Target1条目并单击右键,在弹出的菜单中选择OptionforTarget‘Target1’,打算为Target1配置编译环境。在Output页为CreatHEXFile项打勾,以便输出单片机烧写用HEX格式文件。(7)选项配置好后,在KeiluVisiion2中选择Project/Buildtarget,编译工程项目。编译结果显示在OutputWindows中,如图6.1所示。若有错,可单击错误提示行,然后定位到源程序中修改;若无误则可以导入单片机进行电路的仿真了。图6.1编译结果6.2电路仿真打开Proteus仿真软件,在左边方框栏找出所须要的元器件,然后按电路图连接起来。须要修改参数的元器件,双击即可,在弹出的对话框中修改即可。最终双击单片机将上述编译好的TYN.HEX文件导入单片机,然后运行整个电路即可。电路图仿真图见附录A。运行步骤介绍:接通电源温度传感器DS18B20起先工作,数码管显示出实际温度,然后点击按键设置预设温度,便进入设置水温上限状态,“+”“-”是设置值时对数据调整的。当水位较低时,限制电机运转,从而对其进行加水。当水温持续增加,直到达到所预设温度时,就停止对其加热。若温度超过了预设温度时,则发光二极管发光报警。然后对电路进行复位,以此循环运行整个工作流程。将这些步骤循环进行就能够实现对太阳能热水器智能限制了。图6.2接通电源数码管显示温度图6.3预设温度图6.4温度传感器温度图6.5发光二极管报警仿真结果:接通电源后,数码管显示温度如图6.2示;按以下设置键,进入设置水温上限状态如图6.3所示,并且通过“+”“-”来调整值的大小直到想设置的值为止。在仿真中,温度传感器所设置的温度先是40℃,如图6.4所示。可以点击传感器上的“+”“-”来变更温度。当须要加水时,电动机转动。相反,不须要加水或水够时,电动机不转。当水位达到高水位时,发光二极管发光报警如图6.5所示。通过一系列的检测说明本系统可行。仿真结果分析:在该设计中,由于种种缘由,设计并没有达到预期的要求。设计中出现的一些错误,导致设计没能完备的表达出当时设计该设计的初衷。设计原本须要达到的的是,接通电源后,数码管显示温度传感器的实际温度,然后通过按键设置预设温度。通过浮子开关来感应水位,当水位处于低水位时,电机转动并且加水,直到达到高水位时,电机停止转动,停止加水,发光二极管发光报警。然后加热变更温度传感器温度,使实际温度达到预设温度,然后停止加热。若温度超过预设温度,则报警。以此便达到该设计的初衷。但是,设计并不如预期完备,在设计中水温监测部分,预设温度可自由设置,然后加热,经温度传感器,通过数码管显示出实际温度来。但是当实际温度超过预设温度时,却不报警。导致这种缘由可能是程序在编写的时候有错误,也可能是电路图中元器件的选择出现了错,以至于出现这种状况。由于时间紧迫,无法完善该设计,是一次缺憾。结论该限制器和以往显示仪相比具有性能价格比高、温度限制与显示精度高、运用便利和性能稳定等优点。单片机限制系统具有低价、智能的优势,能够依据需求的不同而作相应的调整,更加特性化。同时,运用单片机限制系统能够节约能源,爱护设备,延长设备的运用时间。该热水器具备以下特点:(1)结构简洁、运行牢靠、操作维护简便。(2)热源取之不尽用之不竭,不须要运输,节约燃料。(3)无污染,不会对四周环境造成任何影响。(4)热水产量受季节、地区纬度、采热面积、环境温度、供水温度。(5)风速、日照实际等因素影响较大。(6)该系统加装减压阀后可与锅炉配套运用,解决冬季用水。(7)不用考虑玻璃盖的防冻装置。在本次设计过程中,有一些可行的地方,当然也有一些不足的地方。在对于水位监测部分做的不是很好,只设置了低水位和高水位,致使检测不是很精准。但这样大致上也不会影响设计的要求。可行的地方是,它在报警部分采纳的是发光二极管,大大降低了制作成本,更适用于家庭。总之,无论从市场或技术抑或价格的角度来说,此款热水器具有很大的优势。它市场前景广袤、技术先进、价格合理、高度智能化,便利省事,是当前市面上热水器的升级产品。它不但适合于城乡民宅需求,还适用于写字楼、餐饮、消遣、商业服务浴室、理发店、旅馆、款待所、托儿所、敬老院及外贸出口等各种需求。参考文献[1]赵文博,刘文涛.单片机语言C51程序设计[M].北京:人民邮电出版社2006.[2]张振荣,晋明武,王投平.MCS-51单片机原理及好用技术[M].北京:人民邮电出版社,2000.[3]孙育才.MCS-51系列单片微型计算机及其应用[M].南京:东南高校出版社,1997:52-55.[4]王长胤,文军.单片单板机原理及应用[M].武汉:武汉高校出版社,1993:45-56.[5]李念强.单片机原理及应用[M].北京:机械工业出版社,2007:30-40.[6]王青.温度传感器DS18B20和51单片机的接口及应用[J].电子制作,2006(1).[7]吴汉清.单片机温度限制器[J].电子制作,2006(7).[8]张涛,王金岗.单片机原理与接口技术[M].北京:冶金工业出版社,2007:72-80.[9]殷为民.太阳能水温水位仪[J].家用电子,1999,5(1):37-38.[10]徐龙坤.协助加热式太阳能热水器[J].家用电器,1997,15(2):9-10.[11]王俊杰.基于89C51单片机的太阳能热水器智能限制器的设计[J].郑州轻工业学院学报:自然科学版,2005(8):67-68.[12]TomFox.BuildtheIntelligentThermometer[J].Computer&Electronics,1983,2.[13]DAndresciani,FCurti,Fatera.etal.Measurementofthegroup-delaydifferencebetweentheprincipalststesofpolarizationonalow-birefingenceterrestrialfibercable[J].OpticsLetters,1987,12:884-846.[14]JungJH,ShineSY,LeeCH.Effectsofpre-chirpingontherepeaterlessdispersionmanagedtransmissionsystem[J].ElectronLett,1996,32(9):831-83.附录A:电路仿真图附录B:源程序S_SET BIT P1.0; 数字钟秒限制位M_SET BIT P1.1; 分钟限制位GJBITP1.2SJBITP1.3FLAG BIT00HP_SWITCHBITP1.4TSET_G EQU 30HTSET_S EQU 31HTEMPER_LEQU29H;用于保存读出温度的低8位TEMPER_HEQU28H;用于保存读出温度的高8位FLAG1EQU38H;是否检测到DS18B20标记位A_BITEQU20H;数码管个位数存放内存位置B_BITEQU21H;数码管十位数存放内存位置 ORG 0000H LJMP START ORG0100HSTART:MOV DPTR,#TABLE;初始化 MOV TSET_G,#0 MOV TSET_S,#0;****************************************************;推断是否有限制键按下,是哪一个键按下A1: LCALL DISPLAYLJMPMAINGO: JNB S_SET,S1 JNB M_SET,S2 AJMPSHUIWEI AJMPSWITCH LJMP A1 S1: LCALL DELAY ;去抖动 JB S_SET,A1 INC TSET_G;秒值加1 MOV A,TSET_G CJNE A,#10,J0;推断是否加到10 MOV TSET_G,#0 LJMP K1 S2: LCALL DELAY JB M_SET,A1 K1: INC TSET_S ;分钟值加1 MOV A,TSET_S CJNE A,#10,J1;推断是否加到10 MOV TSET_S,#0 LJMP K2 K2: MOV TSET_S,#0 MOV TSET_G,#0 LJMP A1;****************************************************;等待按键抬起J0: JB S_SET,A1 LCALL DISPLAY SJMP J0J1: JB M_SET,A1 LCALL DISPLAY SJMP J1;***********************************************SHUIWEI:ANLP3,#03HJNBP3.0,ONEJBP3.1,TWOONE:JNBP3.1,THREE CLRP1.3SETBP1.2 AJMPA1THREE:CLRP1.2SETBP1.3 AJMPSHUIWEITWO:SETBP1.2CLRP1.3AJMPA1;******************************************;温度计MAIN:MOVSP,#70HPUSHACCMOVP2,#0FFHLCALLGET_TEMPER;调用读温度子程序MOVA,29HMOVC,40H;将28H中的最低位移入CRRCAMOVC,41HRRCAMOVC,42HRRCAMOVC,43HRRCAMOV29H,ALCALLDISPLAY;调用数码管显示子程序POPACCLJMPGO;这是DS18B20复位初始化子程序INIT_1820:SETBP1.7NOPCLRP1.7;主机发出延时537微秒的复位低脉冲MOVR1,#3TSR1:MOVR0,#107DJNZR0,$DJNZR1,TSR1SETBP1.7;然后拉高数据线NOPNOPNOPMOVR0,#25HTSR2:JNBP1.7,TSR3;等待DS18B20回应DJNZR0,TSR2LJMPTSR4;延时TSR3:SETBFLAG1;置标记位,表示DS1820存在LJMPTSR5TSR4:CLR

温馨提示

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

评论

0/150

提交评论