收藏 分销(赏)

基于单片机的太阳能热水器控制新版系统的设计和实现.doc

上传人:丰**** 文档编号:2862086 上传时间:2024-06-07 格式:DOC 页数:46 大小:367.54KB
下载 相关 举报
基于单片机的太阳能热水器控制新版系统的设计和实现.doc_第1页
第1页 / 共46页
基于单片机的太阳能热水器控制新版系统的设计和实现.doc_第2页
第2页 / 共46页
基于单片机的太阳能热水器控制新版系统的设计和实现.doc_第3页
第3页 / 共46页
基于单片机的太阳能热水器控制新版系统的设计和实现.doc_第4页
第4页 / 共46页
基于单片机的太阳能热水器控制新版系统的设计和实现.doc_第5页
第5页 / 共46页
点击查看更多>>
资源描述

1、摘 要随着全球人口和经济规模不断增长,能源使用带来环境问题及其诱因逐渐为人们所结识,“低碳经济”这一概念开始进入人们视野。太阳能具备储量“无限性”、存在普遍性,并且几乎不产生任何污染。鉴于此,人们在大力发展太阳能产业。太阳能热水器顺应时代发展规定,满足人们对环保绿色产品需求。在人类文明限度日益提高今天,它是当代文明社会最佳选取。本文提出了一种新型太阳能热水器控制系统设计方案。本设计采用MSC-51系列单片机AT89S52作为中央解决器,采用DS1302实时时钟,12864点阵式液晶显示屏等模块,完毕时间温度水位显示,以及时间和温度设定等功能。核心词:太阳能热水器;单片机;实时时钟;液晶显示屏A

2、BSTRACTAs the global population and economic growth,energy use of environmental problems and causes gradually recognized,low-carbon economy, the concept became part of the people of vision. Solar energy has reserves of the limitless ,the universality of existing,and almost does not produce any pollu

3、tion. In view of this,people in the development of solar energy industry. Solar water heaters,in conformity with the requirements of the times,are meeting the demand for green products. In human civilization increasingly today,it is a modern civilized society. A new solar water heater control system

4、 design. This design incorporates MSC-51 MCU AT89S52 as central processors,a real-time clock using DS1302,12864,dot-matrix LCD module,completion time display of the temperature level,as well as the time and temperature setting. Key words:Solar water heater;chip;clock;LCD screen目 录摘 要IABSTRACTII1 前言1

5、1.1 太阳能热水器构成与工作原理11.2 太阳能热水器发展概况及市场竞争分析21.3 太阳能热水器应用及意义22 太阳能热水器控制系统硬件设计42.1 主控芯片模块42.1.1 主控芯片模块电路42.1.2 主控芯片简介52.2 实时时钟模块72.2.1 实时时钟模块电路72.2.2 实时时钟简介82.3 温度传感器模块102.3.1 温度传感器模块电路102.3.2 温度传感器简介102.4 液晶显示模块122.4.1 液晶显示模块电路122.4.2 液晶显示屏简介132.5 键盘输入模块153 太阳能热水器控制系统软件设计173.1 KEIL uVISION 3软件环境173.2 太阳能

6、热水器控制系统软件设计流程图173.3 太阳能热水器控制系统软件功能实行183.3.1 初始化程序183.3.2 按键检测及解决程序193.3.3 读取温度程序214 太阳能热水器控制系统整体调试234.1 Proteus仿真环境234.2 太阳能热水器控制系统调试过程24结 论27参 考 文 献28致 谢29附 录301 前言在我设计太阳能热水器控制系统之前,一方面理解一下太阳能热水器构成与工作原理,理解一下太阳能热水器基本构架和工作过程,以及太阳能热水器发展概况和深远运用价值。1.1 太阳能热水器构成与工作原理图1.1 热水器装置简图1-集热器 2-下降水管3-循环水管4-补给水箱5-上升

7、水管6-自来水管7-热水出水管热水器重要由集热器、循环管道和水箱等构成,图中为典型热水器装置图。图中集热器1按最佳倾角放置,下降水管2一端与循环水箱3下部相连,另一端与集热器1下集管接通。上升水管5与循环水箱3上部相连,另一端与集热器1上集管相接。补给水箱4供应循环水箱3所需冷水。集热器吸取太阳辐射后,集热器内温度上升,水温也随之升高。水温升高后,水比重减轻,便经上升水管进入循环水箱上部。而循环水箱下部冷水比重较大,就由水箱下流到集热器下方,在集热器内受热后又上升。这样不断对流循环,水温逐渐提高,直到集热器吸取热量与散失热量相平衡时,水温不再升高。这种热水运用循环加热原理,因而又称循环热水器。

8、集热器是一种运用温室效应,将太阳能辐射转换为热能装置,该装置与普通热水互换器不同样,热互换器普通只是液体到液体,或是液体到气体热互换过程,而平板行集热器时直接将太阳辐射传给液体或气体,是一种复杂传热过程。平板型集热器构造形式诸多,世界上已实用集热器就有直管式、瓦楞式、扁管式、铝翼式等二十各种。1.2 太阳能热水器发展概况及市场竞争分析国内自78年引进全玻璃真空集热管样管以来,通过20近年努力,攻克了热压封等许多技术难关,已经建立了拥有自主知识产权当代化全玻璃真空集热管产业,用于生产集热管磁控溅射镀膜机已有745台,产品质量达到世界先进水平,产量雄居世界首位。 1978年中华人民共和国诞生第一台

9、太阳能热水器,到1986年卧式磁控溅射镀膜机设计制造,是在政策扶持下研究开发阶段。1987年,国内制造了第一支全玻璃真空集热管。在之后几年里,全玻璃和热管式真空管集热器实现了产业化,产业规模达到中试水平,为下一阶段产业规模化奠定了良好基本,成为产业孕育发展阶段。1993年太阳能产业进入初级发展阶段:由于成果转化需要很长一段时间磨合,特别是受技术人员缺少影响,此阶段产品质量有待于进一步提高,整体来讲,发展速度较为缓慢。这时候以山东力诺集团为主真空管生产公司产品占了真空管生产绝大某些市场。1997-太阳能产业得到高速发展,逐渐形成北京、鲁东、泰安、扬州、海宁等5个产业基地,并以此向周边不断辐射,产

10、能得以迅速提高。当前,国内是世界上太阳能热水器生产量和销售量最大国家。太阳能热水器是太阳能运用中最常用一种装置,经济效益明显,正在迅速推广应用,太阳能热水器可以将太阳辐射能转换热能,供生产和生活使用。当今社会发展日新月异,人们衣食住行也在不断提高。既有电热型热水器费用昂贵及燃气型热水器不安全性,且排放二氧化碳污染大气,北方用煤气取暖导致都市空气环境污染,这些都是太阳能热水器良好外部生存环境。太阳能热水器 克服了上述缺陷,她是绿色环保产品。它使用简朴、以便。太阳能热水器顺应时代发展规定,满足人们对环保绿色产品需求。1.3 太阳能热水器应用及意义资源是社会经济发展物质基本,经济愈发展,对资源依赖性

11、愈强。许多资源(如煤、石油、天然气等)是不可再生,并且在运用过程中给人类生存环境带来极大污染,人类繁衍生息物质和环境基本受到严峻挑战。加强清洁、可再生资源开发运用,已引起全世界普遍注重。太阳能作为一种取之不尽、用之不竭可再生资源,有节能、环保、安全和永续运用等长处,理应成为开发运用首选。其中太阳能热水器作为家庭生活用品,其开发运用在国内已走过了二十近年历程,生产技术成熟,具备明显长处:(一)从节能环保角度讲,使用太阳能热水器不会对环境导致污染,同步为国家节约了大量能源,社会效益明显,是国家重点推广项目,使用前景辽阔。(二)太阳能热水器使用寿命较长,使用太阳能热水器经济实惠。若使用合理,其寿命可

12、达甚至更长。据测算,使用平方米太阳能热水器,相称于每年节约310度电。太阳能热水器费用只有燃气热水器七分之一,电热水器六分之一。购买太阳能热水器一次性投资3000元左右,使用5至6年就可实现与其热水器支出对比平衡。按照装置寿命计算,其经济效益是十分明显。(三)太阳能热水器集热效果好,集热时间更长。只要阳光能照射到地方,就可以使用太阳能热水器,虽然在高寒地区一年四季也可以正常使用。在国内浙江、江苏、山东等地,太阳能热水器研发和生产已形成规模,应用太阳能热水器场合也由家居使用扩展到医院、学校、宾馆、饭店、游泳池、洗浴场合等。2 太阳能热水器控制系统硬件设计 2.1 主控芯片模块 2.1.1 主控芯

13、片模块电路单片机系统由AT89C52和一定功能外围电路构成,涉及为单片机提供复位电压复位电路,提供系统频率晶振。这某些电路重要负责程序存储和运营。对外接电容值虽然没有严格规定,但电容大小会影响振荡器频率高低、谐振器稳定性、起振迅速性和温度稳定性。晶体可在1.2MHz12MHz之间任选,电容C1和C2典型值在20pF100pF之间选取,但在60pF70pF时振荡器具备较高频率稳定性。典型值普通选取为30pF左右,但本电路采用30pF。AT89C52复位是由外部复位电路来实现。复位电路普通采用上电自动复位和按钮复位两种方式。本设计中所用到是上电按钮复位,如图2.1所示。图2.1 单片机系统2.1.

14、2 主控芯片简介AT89S52 是一种低功耗、高性能CMOS8位微控制器,具备 8K 在系统可编程Flash 存储器。使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash容许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有机灵8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、有效解决方案。AT89S52具备如下原则功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定期器,2个数据指针,三个16位定期器/计数器,一种6向量2级中断构造,全双工串行口,片内晶振及时钟电路。此外,AT

15、89S52可降至0Hz静态逻辑操作,支持2种软件可选取节电模式。空闲模式下,CPU 停止工作,容许RAM、定期器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一种中断或硬件复位为止1。8位微控制器8K字节在系统可编程Flash AT89S52。图2.2为AT89S52引脚图图2.2 AT89S52引脚图AT89S52引脚功能阐明如下:VCC:电源电压GND:地2P0 口:P0口是一种8位漏极开路双向I/O口,也即地址/数据总线复用口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据

16、存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0内部上拉电阻被激活。在flash编程时,P0口也用来接受指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1口是一种具备内部上拉电阻8位双向I/O口,P1输出缓冲器能驱动(吸取或输出电流)4个TTL逻辑门电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低引脚由于内部电阻因素,将输出电流(TTL)。此外,P1.0和P1.2分别作定期器/计数器2外部计数输入(P1.0/T2)和时器/计数器2 触发输入(P1.1/T2EX),详细如表2.1所示。在fla

17、sh编程和校验时,P1口接受低8位地址字节。 表2.1 P1口第二功能端口引脚第二功能P1.0 T2(定期器/计数器T2外部计数输入),时钟输出P1.1 T2EX(定期器/计数器T2捕获/重载触发信号和方向控制)P1.5 MOSI(在系统编程用)P1.6 MISO(在系统编程用)P1.7 SCK(在系统编程用)P2 口:P2 口是一种具备内部上拉电阻8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低引脚由于内部电阻因素,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储

18、器(例如执行MOVX DPTR)时,P2口送出高八位地址。在这种应用中,P2 口使用很强内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器内容。 在flash编程和校验时,P2口也接受高8位地址字节和某些控制信号。 P3 口:P3 口是一种具备内部上拉电阻8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低引脚由于内部电阻因素,将输出电流(TTL)。P3口除了作为普通I/O口线外,更重要用途是它第二功能,P3口第二功能如表2.2。表2.2 P3口第二功

19、能端口引脚第二功能端口引脚第二功能P3.0 RXD(串行输入口)P3.4TO(定期/计数器0)P3.1TXD(串行输出口)P3.5T1(定期/计数器1)P3.2 INTO(外中断0)P3.6WR(外部数据存储器写选通)P3.3 INT1(外中断1)P3.7RD(外部数据存储器读选通)此外,P3口还接受某些用于FLASH闪存编程和程序校验控制信号。RST复位输入。当振荡器工作时,RST引脚浮现两个机器周期以上高电平将是单片机复位。WDT溢出将使该引脚输出高电平,设立SFR AUXRDISRTO位(地址8EH)可打开或关闭该功能。DISRTO位缺省为RESET输出高电平打开状态。ALE/PROG当

20、访问外部程序存储器或数据存储器时,ALE(地址锁存容许)输出脉冲用于锁存地址低8位字节。普通状况下,ALE仍以时钟振荡频率1/6输出固定脉冲信号,因而它可对外输出时钟或用于定期目。要注意是:每当访问外部数据存储器时将跳过一种ALE脉冲。如有必要,可通过对特殊功能寄存器(SFR)区中8EH单元D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才干将ALE激活。此外,该引脚会被薄弱拉高,单片机执行外部程序时,应设立ALE禁止位无效3。PSEN程序储存容许(PSEN)输出是外部程序存储器读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效

21、,即输出两个脉冲,在此期间,当访问外部数据存储器,将有两次有效PSEN信号。EA/VPP外部访问容许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必要保持低电平(接地)。需注意是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器指令。FLASH存储器编程时,该引脚加上+12V编程容许电源Vpp,固然这必要是该器件是使用12V编程电压Vpp。XTAL1:振荡器反相放大器及内部时钟发生器输入端。XTAL2:振荡器反相放大器输出端。2.2 实时时钟模块2.2.1 实时时钟模块电路从古代滴漏更鼓到近代机械钟,从电子

22、表到当前数字时钟,为了精确测量和记录时间,人们始终在努力改进计时工具。钟表数字化,大力推动了计时精准性和可靠性。在单片机构成装置中,实时时钟是必不可少部件。当前惯用实时时钟,诸多采用单片机中断服务来实现,这种方式一方面需要采用计数器,占用硬件资源,另一方面需要设立中断、查询等,同样耗费单片机资源,并且某些测控系统也许不容许;有则使用并行接口时钟芯片,如MC146818、DS12887等,它们虽然能满足单片机系统对实时时钟规定,但是这些芯片与单片机接口复杂,占用地址、数据总线多,芯片体积大,占用空间多,给其他设计带来诸多不便。本设计选用串行接口时钟芯片DS1302与单片机同步通信构成数字时钟电路

23、,如图2.3。其简朴三线接口能为单片机节约大量资源,DS1302后背电源及对后背电源进行涓细电流充电能力保证电路断电后仍能保存时间和数据信息等。这些长处解决了当前惯用实时时钟所无法解决问题。该时钟电路强大功能和优越性能,在诸多领域应用中,特别是某些自动化控制、长时间无人看守测控系统等对时钟精准性和可靠性有较高规定场合,具备很高使用价值。图2.3 DS1302与单片机接口电路2.2.2 实时时钟简介DS13024是美国DALLAS公司推出一种高性能、低功耗、带RAM实时时钟芯片,它可以对年、月、日、周日、时、分、秒进行计时,且具备闰年补偿功能,工作电压宽达2.55.5V。时钟可工作在24小时格式

24、或12小时(AM/PM)格式。DS1302与单片机接口使用同步串行通信,仅用3条线与之相连接。可采用一次传送一种字节或突发方式一次传送各种字节时钟信号或RAM数据。DS1302内部有一种318用于暂时性存储数据RAM寄存器。DS1302是DS1202升级产品,与DS1202兼容,但增长了主电源后背电源双电源引脚,同步提供了对后背电源进行细电流充电能力。DS1302引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭状况下,也能保持时钟持续运营。DS1302由Vcc1或Vcc2两者中较大者供电。当Vcc2不不大于Vcc10.2V时,Vcc2给DS1302供电。当Vcc2不大于Vcc1

25、时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有数据传送。RST输入有两种功能:一方面,RST接通控制逻辑,容许地址/命令序列送入移位寄存器;另一方面,RST提供终结单字节或多字节数据传送手段。当RST为高电平时,所有数据传送被初始化,容许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终结本次数据传送,I/O引脚变为高阻态。上电运营时,在Vcc2.0V之前,RST必要保持低电平。只有在SCLK为低电平时,才干将RST置为高电平。I/O为串行数据输入输出端(双向),背面有详细阐明。SCLK

26、为时钟输入端。控制字节最高有效位(位7)必要是逻辑1,如果它为0,则不能把数据写入到DS1302中。位6如果为0,则表达存取日历时钟数据,为1表达存取RAM数据;位5至位1批示操作单元地址;最低有效位(位0)如为0表达要进行写操作,为1表达进行读操作,控制字节总是从最低位开始输出。DS1302复位引脚:通过把RST输入驱动置高电平来启动所有数据传送.RST输入有两种功能:一方面,RST接通控制逻辑,容许地址命令序列送入移位寄存器;另一方面,RST提供了终结单字节或多字节数据传送手段。当RST为高电平时,所有数据传送被初始化,容许对DS1302进行操作。如果在传送过程中置RST为低电平,则会终结

27、本次数据传送,并且I/O引脚变为高阻态。上电运营时,在Vcc2.5V之前,RST必要保持低电平。只有在SCLK为低电平时,才干将RST置为高电平。在控制指令字输入后下一种SCLK时钟上升沿时数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位控制指令字后下一种SCLK脉冲下降沿读出DS1302数据,读出数据时从低位0位至高位7。 DS1302共有12个寄存器5,其中有7个寄存器与日历、时钟有关,存储数据位为BCD码形式。其日历、时间寄存器及其控制字见表2.3。表2.3 DS1302日历、时钟寄存器及其控制字寄存器名命令字取值范畴各位内容写操作读操作76543210秒寄存器 80H

28、81H00-59CH10SECSEC分寄存器82H83H00-59010MINMIN时寄存器84H85H01-12或00-2312/24010HRHR日寄存器86H87H01-28,29,30,310010DATEDATE月寄存器88H89H01-1200010MMONTH周寄存器8AH8BH01-0700000DAY年寄存器8CH8DH00-9910YEARYEAR此外,DS1302尚有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM有关寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外所有寄存器内容。DS1302与RAM有关寄存器分为两类,一类是单个RAM单元,共31个,每

29、个单元组态为一种8位字节,其命令控制字为C0H-FDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下RAM寄存器,此方式下可一次性读写所有RAM31个字节,命令控制字为FEH(写)、FFH(读)。2.3 温度传感器模块2.3.1 温度传感器模块电路基于DS18B20多点温度测量系统以AT89C51为中心器件,以KEIL为系统开发平台,用C语言进行程序设计,以PROTEUS作为仿真软件设计而成。DS18B20是智能温度传感器,它输入/输出采用数字量,以单总线技术,接受主机发送命令,依照DS18B20内部合同进行相应解决,将转换温度以串口发送给主机。主机按照通信合同用一种IO口模仿DS18B

30、20时序,发送命令(初始化命令、ROM命令、功能命令)给DS18B20,并读取温度值,在内部进行相应数值解决,用图形液晶模块显示各点温度。在系统启动之时,可以通过44键盘设立各点温度上限值,当某点温度超过设立值时,报警器开始报警,从而实现了对各点温度实时监控。每个DS18B20有自己序列号,因而本系统可以在一根总线上挂接了4个DS18B20,通过CRC校验,对各个DS18B20ROM进行寻址,地址符合DS18B20才作出响应,接受主机命令,向主机发送转换温度。采用这种DS18B20寻址技术,使系统硬件电路更加简朴,图2.4所示。图2.4 18B20与单片机连接电路2.3.2 温度传感器简介DS

31、18B20数字温度计是DALLAS公司生产1Wire,即单总线器件,具备线路简朴,体积小特点。因而用它来构成一种测温系统,具备线路简朴,在一根通信线,可以挂诸多这样数字温度计,十分以便。DS18B20产品特点6:只规定一种端口即可实现通信。在DS18B20中每个器件上均有独一无二序列号。实际应用中不需要外部任何元器件即可实现测温。测量温度范畴在55.C到125.C之间。数字温度计辨别率顾客可以从9位到12位选取。内部有温度上、下限告警设立。其引脚功能描述见表2.4。表2.4 DS18B20详细引脚功能描述序号名称引脚功能描述1GND地信号2DQ数字输入输出引脚,开漏单总线接口引脚,当使用寄生电

32、源时,可向电源提供电源3VDD可选取VDD引脚,当工作于寄生电源时,该引脚必要接地64位ROM存储器件独一无二序列号。暂存器包括两字节(0和1字节)温度寄存器,用于存储温度传感器数字输出。暂存器还提供一字节上线警报触发(TH)和下线警报触发(TL)寄存器(2和3字节),和一字节配备寄存器(4字节),使用者可以通过配备寄存器来设立温度转换精度。暂存器5、6和7字节器件内部保存使用。第八字节具有循环冗余码(CRC )。DS18B20加电后,处在空闲状态。要启动温度测量和模仿到数字转换,解决器须向其发出Convert T 44h 命令;转换完后,DS18B20回到空闲状态。温度数据是以带符号位16-

33、bit补码存储在温度寄存器中7。符号位阐明温度是正值还是负值,正值时S=0,负值时S=1。访问DS18B20必要严格遵守这一命令序列,如果丢失任何一步或序列混乱,DS18B20都不会响应主机(除了Search ROM 和Alarm Search这两个命令,在这两个命令后,主机都必要返回到第一步)。a初始化:DS18B20所有数据互换都由一种初始化序列开始。由主机发出复位脉冲和跟在其后由DS18B20发出应答脉冲构成。当DS18B20发出响应主机应答脉冲时,即向主机表白它已处在总线上并且准备工作。b. ROM命令8:ROM命令通过每个器件64-bitROM码,使主机指定某一特定器件(如果有各种器

34、件挂在总线上)与之进行通信。DS18B20ROM如表2.5所示,每个ROM命令都是8 bit长。表2.5 ROM命令指令合同功能读ROM33H读DS18B20中编码(即64位地址)符合ROM55H发出此命令后,接着发出64位ROM编码,访问单总线上与该编码相相应DS18B20,使之作出响应,为下一步对该DS18B20读写作准备搜索ROM0F0H用于拟定挂接在同一总线上DS18B20个数和辨认64位ROM地址,为操作各器件作好准备跳过ROM0CCH忽视64位ROM地址,直接向DS18B20V 温度转换命令,合用于单个DS18B20工作告警搜索命令0ECH执行后,只有温度超过庙宇值上限或下限片子才

35、做出响应温度转换44H启动DS18B20进行温度转换,转换时间最长为500ms(典型为200ms),成果丰入内部9字节RAM中读暂存器BEH读内部RAM中9字节内容写暂存器4EH发出向内部RAM第3、4字节写上、下温度数据命令,紧该温度命令之后,传达两字节数据复制暂存器48H将RAM中第3、4字内容复制到E2PROM中重调E2PROM0B8H将E2PROM中内容恢复到RAM中第3、4字节读供电方式0B4H读DS18B20供电模式,寄生供电时DS18B20发送“0”,外部供电时DS18B20发送“1”2.4 液晶显示模块2.4.1 液晶显示模块电路液晶显示模块以其微功耗、体积小、显示内容丰富、模

36、块化、接口电路简朴等诸多长处得到广泛应用。液晶显示模块分字符型和点阵型两种,前者只能显示惯用字符,点阵型液晶显示模块除显示字符外还能显示各种图形和中文。如图2.5所示,为液晶显示屏与单片机连接电路图。图2.5 液晶显示屏与单片机连接电路2.4.2 液晶显示屏简介12864是一种具备4位/8位并行、2线或3线串行各种接口方式,内部具有国标一级、二级简体中文字库点阵图形液晶显示模块;其显示辨别率为12864,内置8192个16*16点中文,和128个16*8点ASCII字符集。该模块灵活接口方式和简朴、以便操作指令,可构成全中文人机交互图形界面。可以显示84行1616点阵中文。可完毕图形显示。电压

37、低功耗是其又一明显特点。由该模块构成液晶显示方案与同类型图形点阵液晶显示模块相比,无论硬件电路构造或显示程序都要简洁得多,且该模块价格也略低于相似点阵图形液晶模块9。图2.6 LCD构造尺寸基本特性:低电源电压(VDD:+3.0-+5.5V)显示辨别率:12864点内置中文字库,提供8192个1616点阵中文(简繁体可选)内置 128个168点阵字符2MHZ时钟频率显示方式:STN、半透、正显驱动方式:1/32DUTY,1/5BIAS视角方向:6点背光方式:侧部高亮白色LED,功耗仅为普通LED1/51/10通讯方式:串行、并口可选内置DC-DC转换电路,无需外加负压无需片选信号,简化软件设计

38、工作温度:0 - +55 ,存储温度:-20 - +60 控制器接口信号阐明:如表2.6,2.7表2.6 RS和R/W配合选取决定控制界面4种模式RSR/W功能阐明LLMPU写指令到指令暂存器(IR)LH读出忙标志(BF)及地址记数器(AC)状态HLMPU写入数据到数据暂存器(DR)HHMPU从数据暂存器(DR)中读出数据表2.7 E信号E状态执行动作成果高低I/O缓冲DR配合/W进行写数据或指令高DRI/O缓冲配合R进行读数据或指令低/低高无动作 忙标志:BF。BF标志提供内部工作状况.BF=1表达模块在进行内部操作,此时模块不接受外部指令和数据.BF=0时,模块为准备状态,随时可接受外部指

39、令和数据。运用STATUS RD 指令,可以将BF读到DB7总线,从而检查模块之工作状态。字型产生ROM(CGROM):字型产生ROM(CGROM)提供8192个此触发器是用于模块屏幕显示开和关控制。DFF=1为开显示(DISPLAY ON),DDRAM 内容就显示在屏幕上,DFF=0为关显示(DISPLAY OFF)。DFF 状态是指令DISPLAY ON/OFF和RST信号控制10。显示数据RAM(DDRAM):模块内部显示数据RAM提供642个位元组空间,最多可控制4行16字(64个字)中文字型显示,当写入显示数据RAM时,可分别显示CGROM与CGRAM字型;此模块可显示三种字型,分别

40、是半角英数字型(16*8)、CGRAM字型及CGROM中文字型,三种字型选取,由在DDRAM中写入编码选取,在0000H0006H编码中(其代码分别是0000、0002、0004、0006共4个)将选取CGRAM自定义字型,02H7FH编码中将选取半角英数字字型,至于A1以上编码将自动结合下一种位元组,构成两个位元组编码形成中文字型编码BIG5(A140D75F),GB(A1A0-F7FFH)。 字型产生RAM(CGRAM):字型产生RAM提供图象定义(造字)功能,可以提供四组1616点自定义图象空间,使用者可以将内部字型没有提供图象字型自行定义到CGRAM中,便可和CGROM中定义同样地通过

41、DDRAM显示在屏幕中。地址计数器AC11:地址计数器是用来贮存DDRAM/CGRAM之一地址,它可由设定指令暂存器来变化,之后只要读取或是写入DDRAM/CGRAM值时,地址计数器值就会自动加一,当RS为“0”时而R/W为“1”时,地址计数器值会被读取到DB6DB0中。光标/闪烁控制电路:此模块提供硬体光标及闪烁控制电路,由地址计数器值来指定DDRAM中光标或闪烁位置。2.5 键盘输入模块普通具备人机对话单片机系统少不了会有键盘。本设计采用三个按键,最佳接口方案是独立式接法,即每一种I/O口上只接一种按键,按键另一端接地。独立式键盘实现办法是运用单片机I/O口读取口电平高低来判断与否有键按下

42、。咱们将按键一端接地,另一端接一种I/O口,程序开始时将此I/O口置于高电平,平时无按键按下时I/O口保护高电平。当有键按下时,此I/O口与地短路迫使I/O口为低电平。按键释放后,与单片机连接上拉电阻使I/O口依然保持高电平。咱们所要做就是在程序中查询此I/O口电平状态就可以理解咱们与否有按键动作了。值得注意是,咱们在用单片机对键盘解决时候涉及到了一种重要过程,那就是键盘去抖动。这里说抖动是机械抖动,是当键盘在未按到按下临界区产生电平不稳定正常现象,并不是咱们在按键时通过注意可以避免。这种抖动普通在10200毫秒之间,这种不稳定电平抖动时间对于人来说太快了,而对于时钟是微秒级单片机而言则是漫长

43、。为了提高系统稳定性,咱们必要去除或避开它。此处我采用软件去抖动,实现办法是先查询按键当有低电平浮现时及时延时10200毫秒以避开抖动,延时结束再读一次I/O口值。按键分工,从左至右依次为1、2、3号按键,一号键模式键,二号三号键为加减键。图2.7 键盘接口电路3 太阳能热水器控制系统软件设计3.1 KEIL uVISION 3软件环境单片机开发中除必要硬件外,同样离不开软件,本系统软件编程设计是在Keil软件环境中完毕。咱们写C语言、汇编语言源程序要变为CPU可以执行机器码有两种办法,一种是手工汇编,另一种是机器汇编,当前已很少使用手工汇编办法了。机器汇编是通过汇编软件将源程序变为机器码,用

44、于MCS-51单片机汇编软件有初期A51,随着单片机开发技术不断发展,从普遍使用汇编语言到逐渐使用高档语言开发,单片机开发软件也在不断发展,Keil软件是当前最流行开发51系列单片机软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了涉及C编译器、宏汇编、连接器、库管理和一种功能强大仿真调试器等在内完整开发方案,通过一种集成开发环境(uVision)将这些部份组合在一起。掌握这一软件使用对于使用51系列单片机兴趣者来说是十分必要,如果使用C语言编程,那么Keil几乎就是不二之选。虽然不使用C语言而仅用汇编语言编程,其以便易用集成环境、强大软件仿真调试工具也会令人事半功倍

45、12。Keil C51是美国Keil Software公司出品51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、构造性、可读性、可维护性上有明显优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。 Keil C51软件提供丰富库函数和功能强大集成开发调试工具,全Windows界面。此外重要一点,只要看一下编译后生成汇编代码,就能体会到Keil C51生成目的代码效率非常之高,多数语句生成汇编代码很紧凑,容易理解。在开发大型软件时更能体现高档语言优势。3.2 太阳能热水器控制系统软件设计流程图本课题设计太阳能热水器控制系统软件程序设计重要由(1)初始化程序,(2)扫描

46、按键程序,(3)按键解决子程序,(4)读取水位信息、水箱温度和时间程序,(6)调用显示子程序,六个某些构成。系统总体流程图如图3.1所示。开始初始化扫描键盘,与否有按键N调用键盘解决子程序Y读取水位信息和水箱温度调用显示子程序显示水温时间图3.1 系统总体流程图3.3 太阳能热水器控制系统软件功能实行3.3.1 初始化程序 太阳能热水器控制系统在接通电源后,一方面要对系统进行初始化。初始化过程涉及启动DS1302,启动12864,对12864进行清屏。初始化流程图如下:初始化开始启动DS1302启动12864清屏图3.2 初始化程序流程图初始化程序清单如下:void start(void) /初始化函数 unsigned char i;set_time(0x8e,0x00); /取消写保护set_time(0x80,0x0

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服