基于51单片机的太阳能热水器智能控制器的设计_第1页
基于51单片机的太阳能热水器智能控制器的设计_第2页
基于51单片机的太阳能热水器智能控制器的设计_第3页
基于51单片机的太阳能热水器智能控制器的设计_第4页
基于51单片机的太阳能热水器智能控制器的设计_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

哈尔滨理工大学学士学位论文哈尔滨理工大学学士学位论文-3热水器装置简图1-集热器2-下降水管3-循环水管4-补给水箱5-上升水管6-自来水管7-热水出水管热水器主要由集热器、循环管道和水箱等组成,图中为典型的热水器装置图。图中集热器1按最佳倾角放置,下降水管2的一端与循环水箱3的下部相连,另一端与集热器1的下集管接通。上升水管5与循环水箱3上部相连,另一端与集热器1的上集管相接。补给水箱4供给循环水箱3所需的冷水。当集热器吸收太阳辐射后,集热器内温度上升,水温也随之升高。水温升高后,水的比重减轻,便经上升水管进入循环水箱上部。而循环水箱下部的冷水比重较大,就由水箱下流到集热器下方,在集热器内受热后又上开。这样不断对流循环,水温逐渐提高,直到集热器吸收的热量与散失的热量相平衡时,水温不再升高。这种热水利用循环加热的原理,因此又称循环热水器。集热器是一种利用温室效应,将太阳能辐射转换为热能的装置,该装置与一般热水交换器不一样,热交换器通常只是液体到液体,或是液体到气体的热交换过程,而平板行集热器时直接将太阳辐射传给液体或气体,是一个复杂的传热过程。平板型集热器结构形式很多,世界上已实用的集热器就有直管式、瓦楞式、扁管式、铝翼式等二十多种。.3主要芯片的结构与特点2.3.1.DS12887时钟芯片简介随着2000年的即将来临,“千年虫”问题成为困扰当今世界的一大难题。过去采用两位数表示年度的日历系统将要用四位数来表示,因此有关的计算机操作系统和应用软件都要作相应的修改。据此,美国达拉斯半导体公司(Dallas)最新推出DS12887的串行接口实时时钟芯片,采用CMO取术制成,具有内部晶振和时钟芯片备份锂电池,同时它与目前旧MAT计算机常用的时钟芯片MC146818BWDS1287管脚兼容,可直接替换。它所提供的世纪字节在位置32h,世纪寄存器32h到2000年1月1日从19递增到20。采用DS12887芯片设计的时钟电路不需任何外围电路和器件,并具有良好的微机接口。DS12887E片具有微功耗,外围接口简单,精度高,工作稳定可靠等优点,可广泛用于各种需要较高精度的实时时钟系统。美国Dallas公司推出两款数字时钟芯片DS12887/DS12C887两款时钟芯片都将在1999年12月31日23时59分59秒时顺利地跳到2000年1月1日零时,并能实2000年2月29日的闰年提示,是时钟芯片DS1287的增强型品种,结构上相当于MC146818B的改进型。芯片都采用24引脚双列直插式封装,其引脚接口逻辑和内部操作方式与MC146818基本一致,所不同的是DS12887/DS12C887E片的晶体振荡器、振荡电路、充电电路和可充电锂电池等一起封装在芯片的上方,组成一个加厚的集成电路模块,因此,DS12887/DS12C887时钟芯片无需MC146818的电源电位检测端(PS),电路通电时其充电电路便自动对可充电电池充电,充足一次电可供芯片时钟运行半年之久,正常工作时可保证时钟数据十年内不会丢失。止匕外,片内通用的RAM为MC146818的两倍以上。DS12887/DS12C88加部有专门的接口电路,从而使得外部电路的时序要求十分简单,使它与各种微处理器的接口大大简化。使用时无需外围电路元件,只要选择引脚MOT电平,即可和不同计算机总线连接。.主要技术特点DS12887/DS12C887M有下列主要技术特点:(1)具有完备的时钟、闹钟及到2100年的日历功能,可选择12小时制或24小时制计时,有AWPM星期、夏令时间操作,闰年自动补偿等功能。(2)具有可编程选择的周期性中断方式和多频率输出的方波发生器功能。DS12887内部有14个时钟控制寄存器,包括10个时标寄存器,4个状态寄存器和114bit作掉电保护用的低功耗RAM(4)由于该芯片具有多种周期中断速率时钟中断功能,因此可以满足各种不同的待机要求,最长可达24小时,使用非常方便。

(5)(6)时标可选择二进制或BC(5)(6)工作电压:+4.5〜5.5V、工作电流:7〜15mA工作温度范围:0〜70°C。2.DS12887/DS12C887的内部结构胸一11菽]nnrtuitTCCAn&AD*KKZBINM*□H期中断/方波率的也*出"寄存胸一11菽]nnrtuitTCCAn&AD*KKZBINM*□H期中断/方波率的也*出"寄存4KBXD时W日历用户瞄铮单元图2-4DS18B20内部框图其中:MOT计算机总线选择端;SQW方波输出,速率和是否输出由专用寄存器A、B的预置参数决定;AD3AD7地址/数据(双向)总线,由AS的下降沿锁存8位地址;R/W读/写数据;AS:地址锁存信号端;DS数据读信号端;CS选通信号端,低电平有效;IRQ:中断申请,由专用寄存器决定;RESET复位端;NC空引脚。读信号DS1288内部由振荡电路,分频电路,周期中断/方波选择电路,14字节时钟和控制单元,114字节用户非易失RAM十进制/二进制计加器,总线接口电路,电源开关写保护单元和内部锂电池等部分组成。DS12887T脚分配如图:

MOTNCNCAD1AD2AD3AD4AD5AD6AD7GND□I□2□4MOTNCNCAD1AD2AD3AD4AD5AD6AD7GND□I□2□435□7□9310311□122423222f201918cere图2-5管脚分配图VCC直流电源+5V电压。当5Vfe压在正常范围内时,数据可读写;当VCC5于4.25V,读写被禁止,计时功能仍继续;当VCCr降到3VW下时,RAM和计时器供电被切换到内部锂电池。MOT模式选择):MOT管脚接到VCCf,选择MOTOROLA^当接到GND时,选择INTELSQW哈波信号输出):SQW管脚能从实时时钟内部15级分频器的13个抽头中选择一个作为输出信号,其输出频率可通过对寄存器A编程改变。AD0一AD7砥向地址/数据复用线):总线接口,可与MOTOROLA系列和INTEL微机系列接口。AS(地址选通输入):用于实现信号分离,在AD/ALE的下降沿把地址锁入DS12887DS(数据选通或读输入):DS/RD管脚有两种操作模式,取决于MO管脚的电平,当使用MOTORO2LA序时,D用一正脉冲,出现在总线周期的后段,称为数据选通;在读周期,DS旨示DS1288耶动双向总线的时刻;在写周期,DS勺后7&使DS1288被存写数据。选择INTELM序时,DS&作(RD),RDW即存贮器的允许信号(OE)的定义相同。R/WQ1/写输入):R/W管脚也有两种操作模式。选MOTOROLA序时,R/W是一电平信号,指示当前周期是读或写周期,D效高电平时,R/W高电平指示读周期,R/W信号是一低电平信号,称为WR在此模式下,R/W

管脚与通用RAM的写允许信号(WE)的含义相同。CS(片选/U入):在访问DS12887的总线周期内片选信号必须保持为低。IRQ(中断申请输入):低电平有效,可作微处理的中断输入。没有中断的条件满足时,IRQ处于高阻态。IRQ线是漏极开中输入,要求外接上接电阻。RESET复位输出):当该脚保持低电平时间大于200ms保证DS12887T效复位。3.DS12887/DS12C887内部寄存器的功能因DS12887和DS12C887结构功能上类似,现以DS12887为例说明如下:CPUS过读DS12887勺内部时标寄存器得到当前的时间和日历,也可通过选择二进制码或BC画初始化芯片的10个时标寄存器。其114bit非易失性静态RAM可供用户使用,对于没有RAMJ单片机应用系统,可在主机掉电时来保存一些重要的数据。DS12887的4个状态寄存器用来控制和指DS12887模块的当前工作状态,除数据更新周期外,程序可随时读写这4个寄存器,各寄存器的功能和作用如下。寄存器A各位不受复位的影响,UIP位为只读位,其它各位均可读写。寄存器的控制字的格式如下表2所列:表2DS12887控制寄存器A各布尔位定义:IT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0UIPDV2DV1DV0RS3RS2RS1RS01.IP位:更新周期标志位。该位为“1”时,表示芯片正处于或即将开始更新周期,此时程序不准读写时标寄存器;该位为“0”时,表示至少在244pS后才开始更新周期,此时程序可读芯片内时标寄存器。该位是只读位。DV0、DV1、DV2:芯片内部振荡器RTC控制位。当芯片解除复位状态,并将010写入DVQDVIDV2B,另一个更新周期将在500mSf开始。因此,在程序初始化时可用这三位精确地使芯片在设定的时间开始工作。这与MC146818不同的是,DS1288商定使用32768Hz的内部晶体,所以,DV0="0",DV1="1",DV2="0”,即只有一种010的组合选择即可启动RT(RS3、RS2RSIRS0周期中断可编程方波输出速率选择位。各种不同的组合可以产生不同的输出。程序可以通过设置寄存器B白SQWFF口PIE位控制是否允许周期中断和方波输出。其寄存器A俞出速率选择位如表3所列。表3DS12887控制寄存器A输出速率选择位定义寄存器A输出速率选择位32768Hz时基RS3RS2RS1RS0中断周期RS3RS2RS1RS0中断周期SQWF输出频00013.90625ms256Hz00107.8125ms128Hz0011122.0ps8.192kHz0100244.141Ns4.096kHz0101488.281Ns2.048kHz0110976.5625ps1.024kHz01111.953125ms512Hz10003.90625ms256Hz!110017.812msl-J128Hz101015.625ms64Hz101131.25ms32Hz110062.5ms16Hz1101125ms8Hz1110250ms4Hz1111500ms2Hz寄存器B允许读写,主要用于控制芯片的工作状态。寄存器B的控制字的格式如表4所列。表4DS12887控制寄存器哈布尔位定义BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0SETPIEAIEUIESQWEDM24/12DSE(1)SET位:当该位为“0”时,芯片处于正常工作状态,每秒产生一个更新周期来更新时标寄存器为“1”时,芯片停止工作,程序在此期间可初始化芯片的各个时标寄存器。(2)PIE、AIE、UIE位:分别为周期中断、报警中断、更新周期结束中断允许位。各位为“1”时,允许芯片发相应的中断。

(3)SQWE位:方波输出允许位。SQWE1",按寄存器A输出速率选择位所确定的频率输出方波;SQWE="0",脚SQW:持低电平。(4)DM位:时标寄存器用十进制BCD码表示或用二进制表示格式选择位。DM="0”时,为十进制BCD?;DM="1”时,为二进制码。(5)24/12位:时工作模式;24/1224/12小时模式设置位。24/12位="1”时,为24小位(5)24/12位:时工作模式;24/12(6)DSE位:夏令时服务位。DSE="1”,豆时制设置有效,复时制结束可自动刷新恢复时间;DSE="0”,无效。寄存器。勺控制字的格式如表4所列。该寄存器的特点是程序访问读该寄存器后,该寄存器的内容将自动清零,从而使IRQF标志位变为高电平,否则,芯片将无法向CPU申请下一次中断。表5DS12887控制寄存器并布尔位定义BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0IRQFPFAFUF0000IRQF位:中断申请标志位。该位逻辑表达式为:IRQF=PF•PIE+AF-AIE+UF-UIEo当IRQFB变“1”时,引脚将变低电平引发中断申请。PF、AF、UF位:这三位分别为周期中断、报警中断、更新周期结束中断标志位。只要满足各中断的条件,相应的中断标志位将置“1”。BIT3〜BIT0:未定义的保留位。读出值始终为0。寄存器M只读寄存器。寄存器D的控制字的格式如表6所示。表6DS12887控制寄存器D各布尔位定义BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0VRT0000000一(1)VRT位:芯片内部RAM与寄存器内容有效标志位。该位为“1”时,指芯片内部RAM和寄存器内容有效。读该寄存器后,该位将自动置“1”。(2)BIT6〜BIT0位:保留位。读出的数值始终为0。!「二二一[;L14.DS12887/DS12C887的中断和更新周期DS12887/DS12C887%于正常工作状态时,每秒钟将产生一个更新周期,芯片处于更新周期的标志是寄存器A中的UIP位为“1”。在更新周期内,芯片内部时标寄存器数据处于更新阶段,故在该周期内,微处理器不能读芯片时标寄存器的内容,否则将得到不确定数据。更新周期的基本功能主要是刷新各个时标寄存器中的内容,同时秒时标寄存器内容加1,并检查其他时标寄存器内容是否有溢出,如有溢出则相应进位日、月、年。另外一个功能是检查三个时、分、秒报警时标寄存器的内容是否与对应时标寄存器的内容相符,如果相符则寄存器成的AF位置“1”。如果报警时标寄存器的内容为C0布FFH1间的数据,则为不关心状态。为了采样时标寄存器中的数据,DS12887/DS12C88限供了两种避开更新周期内访问时标寄存器的方案:第一种是利用更新周期结束发出的中断。它可以编程允许在每次更新周期结束后发生中断申请,提醒CPLW有998ms左右的时间去获取有效的数据,在中断之后的998ms时间内,程序可先将时标数据读到芯片内部的不掉电静态RAMfro因为芯片内部的静态RAM和状态寄存器是可随时读写的,在离开中断服务子程序前应清除寄存器C中的IRQF位。另一种是:利用寄存器A中的UIP位来指示芯片是否处于更新周期。在UIP位从低变高244^s后,芯片将开始其更新周期,所以检测到UIP位为低电平时,则利用244^s的间隔时间去读取时标信息。如检测到UIP位为“1”,则可暂缓读数据,等到UIP变成低电平后再去读数据。2.3.280C51单片机结构特点微型计算机的出现与发展已广泛应用到各行各业中,使人们的日常生活工作都发生了重大变化,如果没有微型计算机,人们的工作生活的质量都受到很大的损失。单片微型计算机是微型计算机发展中的一个重要分支,其独特的结构与性能,越来越普及地应用于国民经济的各个领域,以下主要介绍80C51单片机,它与微型计算机的区别是什么,单片机发展概况;它的特点和应用,通过对本节的学习,使大家对单片微型计算机有个初步的认识和了解。一、单片机的组成单片微型计算机简称单片机,它在一块芯片上集成了各种功能部件:中央处理器(CPU、随机存取存储器(RAM、只读存储器(ROM、定时器/计数器、和各种输入/输出(I/O)接口(如并行I/O口、出行I/O口和A/D转换器)等。他们之间相互连接图如2-6图,构成一个完整的微型计算机。RAM图2-6单片机结构框图二、80C51单片机的引脚描述及片外总线结构.芯片的引脚描述CHMOSJ造工艺的80C51单片机采用40引脚的双列直插封装(DIP方式),在单片机的40条引脚中有2条专用于主电源的引脚,2条外接晶体的引脚,4条控制与其它电源复用的引脚,32条输入/输出(I/O)引脚。卜面按其引脚功能为四部分叙述这40条引脚功能。电源引脚VCC?口VSS其中:VCC(40脚)接+5V电压VSS(20脚)接地。接晶体弓I脚XTAL1和XTAL2XTAL1(19脚)接外部晶体的一个引脚。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部振荡器时,对CHMOS片机,此引脚作为驱动端。XTAL2(18脚)接外部晶体的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端。采用外部振荡器时,对CHMOS片机,该引脚悬浮。控制或与其他电源复用引脚RST/VPDALE/PROGPSENf口EA/VPPST/VPD(9脚):当振荡器运行时,在此引脚上出现两个机器周期的高电平将使单片机复位。推荐在此引脚与VSS弓I脚接一个约8.2K的下拉电阻,与VCC引脚之间连接一个约10uf的电容,以保证可靠地复位。VCC掉电期间,此引脚可接上备用电源,以保持内部RAM勺数据不丢失。当VCC主电源下掉到低于规定的电平,而VPD&其规定的电压范围内,

VPDM向内部RAM!供备用电源。ALE/PROG30脚):当访问外部存储器时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。即使不访问外部存储器,ALE端仍以不变的频率周期性地出现正脉冲信号,此频率为振荡器频率的1/6。因此,它可用作对外输出的时钟,或用于定时目的。然而要注意的是,每当访问外部数据存储器时,将跳过一个ALE脉冲。ALE端可以驱动(吸收或输出电流)8个LS型的TTL输入电路。对于EPROMO勺单片机,在EPRO褊程期间,此引脚用于输入编程脉冲(PROGRSEN(29脚):此脚的输出是外部程序存储器的读写选通信号。在从外部程序存储器取令(或常数)期间,每个机器周期两次PESNt效。但在此期间,每当访问外部数据存储器时,这两次有效的PSENB号将不出现,PSEN同样可以驱动(吸收或输出)8个LS型的TTL输入。EA/VPP当EA端保持高电平时,访问内部程序存储器,但在PC(程序计数器)值超过0FFFH时,将自动转向执行外部程序存储器内的程序,当EA保持低电平时,则只访问外部程序存储器,不管是否有内部程序存储器,对于常用的80C51来说,无内部程序存储器,所以EA脚必须常接地,这样才能只选择外部程序存储器。对于EPRO邨单片机,在EPRO哪程期问,此引脚也用于施加21伏的编程电源(VPP。输入/输出I/O引脚PRP1、P2、P3共32根。a)P0口(39脚〜32脚):是双向8位三态I/O口,外接存储器时,与地址总线的低8位及数据总线复用,能以吸收电流的方式驱动8个LSTTL负载。b)P1口(1脚〜8脚):是8位准双向I/O口由于这种接口输出没有高阻状态,输入也不能琐存,故不是真正的I/O口。门口能驱动(吸收或输出电流)4个LSTTL负载,对8052、8032,P1.0引脚的第二功能为T2定时/计数器的外部输入,P1.1引脚的第二功能为T2EX捕捉、重装触发,即T2的外部控制端。对EPROM程和程序验证时,它的接收低8位地址。c)P2口(21脚〜28脚):是8位准双向I/O口。在访问外部存储器时,它可以作为扩展电路高8位地址总线送出高8位地址,在对EPRO射程和程序验证期间,它的接收高8位地址。P2可以驱动(吸收或输出电流)4个LSTTL负载。d)P3口(10脚〜17脚):是8位准双向I/O口,在80c51中,这8个引脚还用于专门功能,是复用双功能口,P3能驱动(吸收或输出电流)4个LSTTL负载。作为第一功能用时,就作为普通的I/O口用,功能和操作方法与P1口相同。表6

引脚P3.010RXD(用行输入口)P3.111TXD(用行输出口)P3.212INT0(外部中断0)P3.313INT1(外部中断1)P3.414T0(定时器0外部输入)P3.515T1(定时器1外部输入)P3.616WR(外部数据存储器写脉冲)P3.717RD(外部数据存储器读脉冲)值得强调的是,P3口的每一条引脚都可以独立定义第一功能的输入输出或第二功能。2.3.3数字温度传感器DS18B2庇要特性及测温原理一线式数字温度传感器DS18B2是DS1820勺更新换代产品(由美国DAIIAS公司生产)。它具有体积小,分辨率高,转换快等优点。由于每片DS18B20含有唯一的硅串行数,所以在一条总线上可以挂接多达248=218X1014只DS18B20再力口上DS18B20独特的单线总线结构,决定了DS18B20特别适合于大型的多路温度实时测控系统的温度检测。温度实时测控集装箱的设计,在实现测控系统的温度检测方面就较好地利用了DS18B20的独到特点,使系统得到了极大的简化。一、DS18B2的特性(1)独特的单线接口方式。DS18B20在I/O处理器连接时,仅需要一个I/O口即可实现微处理器同DS18B2的双向通讯。DS18B20支持组网功能,多个DS18B20T以并联在唯一的单线上,实现多点测温。DS18B20的测温范围为:-55c〜+125C,在-10C〜+85c时,其

精度为+015CoDS18B20的测温结果的数字量位数从9〜12位,可编程进行选择DS18B20内含寄生电源,器件既可以由单线总线供电,也可用外部的电源(310V〜515V)供电。数字化温度传感器DS182醐温范围为-55〜+125C,增量值为0.5C(9位温度读数),它主要由4个数据部件部分组成:64位ROM温度传感器;非易失性的温度告警触发器TH和TL;高速便笺存储器64位ROMS于存储序列号,其首字节固定为28H,表示产品类型码,后6个字节是每个器件的编码,最后1个字节是CRC校验码.温度告警触发器THWTL存储用户通过软件写入的报警上下限值,高速便笺存储器由9个字节组成,其中有2个字节RAM元用来存放温度值前1个字节为温度值的补码低8位,后1个字节为符号位和温度值的补码高3位。二、DS18B20测温原理DS18B2内部结构框图,如图2.3.3所示。电源检砌*—64电源检砌*—64位ROM鲫媾口R币尊—▼好CRC峨器2-7DS18B20内部结构框图DS18B20的测温原理:DS18B20测量温度采用了特有的温度测量技术,它是通过计数时钟周期来实现的,内部计数器对一个受温度影响的振荡器的脉冲计数,低温时,振荡器的脉冲可以通过门电路。而当到达某一设置高温时,振荡器的脉冲无法通过门电路。计数器设置为-55Co同时,计数器复位在当前的温度值时,电路对振荡器的温度系数进行补偿,计数器重新开始计数直到回零。如果门电路仍未关闭,则系统重复上述过程。三、DS18B2的操作协议DS18B2单纯通信功能是分时完成的。单线信号包括复位脉冲,响应脉冲,写“0”,写“1”,读“1”。它们有严格的时隙概念。系统对DS18B2的操作以ROM令(5个)和存储器命令(6个)形式出现。对它的操作协议是:初始化DS18B20:复位脉冲)一发ROMb能命令一处理数据一发存储器命令处理数据。各种操作都有相应的时序图。DS18B2在使用时,一般都采用单片机来实现数据采集。只需将DS18B20信号线与单片机1位I/O线相连,且单片机的1位I/O线可挂接多个DS18B20就可实现单点或多点温度检测。DS18B2法感器精度高、互换性好;它直接将温度数据进行编码,可以只使用一根电缆传输温度数据,通信方便,传输距离远且抗干扰性好:与用传统温度传感器组成的多点测温系统相比可节省大量电缆,而且系统得以简化,系统扩充维护十分方便。DS18B20可以广泛用于工厂工业过程、大型粮仓、酿酒厂,食品加工厂的温度检测以及宾馆、仪器仪表室等处的温度检测和控制。第三章:太阳能热水器硬件设计.太阳能控制器硬件结构根据控制要求,采用80C51单片机的智能控制器结构框图如图1所示由于本系统运算量不是很大,没有太多的中间数据需要处理、保存,因此不再外扩数据存储器。仅使用80C51内部RAME完全能够满足要求。系统的硬件接口电路包括:控制器实时时钟接口电路,蓄水箱温度和水位检测接口电路、设定键和串行显示接口电路、看门狗和复位接口电路以及继电器输出接口电路等。80c51水位楮,器—,水位楮,器—,阳曙44+辅助加第叁*阿斗图3-1太阳能控制器硬件结构图.控制器实时时钟接口电路为实现热水器24小时供应热水的目的,控制器必须有一个实时时钟来为系统提供准确的基准时间;在软件设计上则要实时地读出当前时间,同设定时间比较,以决定系统工作状态。本系统采用美国DALLAS半导体公司最新推出的时钟芯片DS12887该芯片采用CMO豉术,把时钟芯片所需的晶振和电池以及相关的电路集成到芯片内部,并与MC146818T脚完全兼容。DS12887E片具有微功耗、外围接口简单、精度高,工作稳定可靠等优点。它与80C51单片机的接口电路见下图3-2。80C51DS1288780C51方波.出+5V1K方波.出+5V1K图3-2DS12887与单片机接口电路模式选择脚MO被地,选^¥INTEL时序。DS12887的高位地址用80C51的P2.4选择,则时钟芯片的高8位地址为EFH而其低8位地址则由芯片内部各单元的地址来决定(00H〜80H),DS12887的中断输出端IRQ接上拉电阻,同80C51中断线INTO相连,为单片机提供中断信号。SQ惭口编程

为2Hz万波输出,经二分频后,驱动两个LED发光二极管作为时钟的秒闪烁显示。.水位检测和温度检测接口电路蓄水箱水位和温度检测部分是实现温度智能控制的重要环节,只有准确地检测出水位和温度,才能通过软件计算提前开始辅助加热的预加热时问。要实现辅助加热提前时间的精确计算,最好是采用连续液位传感器,但考虑系统成本,本设计仍采用分段式液位传感器(通过软件来提高精度),在水位显示上也仍采用分段显示。水位检测部分的硬件连接如图3所示。X2WI--14LS32图3-3水位监测及显示接口电路X2WI--14LS32图3-3水位监测及显示接口电路检测原理如下:当水箱中无水时,8个非门均由1M欧姆电阻上拉成高电平,所以图中各“非”门(CD4069)输出均为低电平,LED卜LED8均不亮。当水位高于“非”门1的输入探针时,由于水的导电作用,使“非”门1的输入变为低电平,所以其输出变为高电平,LED点亮,依此类推。随着水位的上升,各“非”门输出相继为高电平,LED依次点亮。这里要注意的是上拉电阻不能选择太小,因为水的电阻在100k8左右,所以上拉电阻选择太

小的话,将在水位升高时,无法把“非”门输入端拉成低电平。实验表明,上拉电阻选择在500k〜1M欧姆左右能很好地满足电路的工作要求。为了使80C51随时能够读出当前的水位情况,这里选用74LS244作为状态输入缓冲器。蓄水箱温度检测电路采用DS18B20芯片使其换成脉冲信号,送到80C51的I/O口(编程为计数器工作模式),通过测量输出脉冲频率的大小来换算成水温高低信号。看门狗和复位接口电路的设计控制器的看门狗电路由两级74LS123芯片组成。用P1.7作为单稳态触发器的定时脉冲发生端,当P1.7口线超过一定时间不对74LS123发正脉冲时,系统将自动复位(附录)。键盘和显示接口电路的设计键盘电路下图为80C51单片机P1口构成的中断方式4*4键盘电路。P1.0-P1.3为行线,P1.4-P1.7为列线,行线与4输入与门74HC21的一组输入端相连,输出端与外部中断INT1相连。16个键号Ki(1=0-15)次序如图中标注。INT1AB-CDVCC时钟AB-CDVCCP1.P1.P±P1.3定1.4倬1.5、P16P1780C51图3-480C51P1口构成的4*4中断方式键盘行列式键盘处理程序较为复杂,当有键按下时74HC21输出端出现低电平请求中断;在中断服务程序中要再次确认是否真有键按下,真有键按下时,再查出是哪个键按下,把该键的键号送入堆栈保护,等待键释放后再将键号弹出A中。该键盘输入处理程序的出口状态是键号在A中。设计中断程序时,先在主程序中将中断系统初始化,并开中断。在试验演示中通常开中断都设置循环等待。显示接口电路的设计键盘和显示电路是人机交互的重要手段。控制键是用户干预系统运行的唯一接口,也是用户比较关心的问题。为了实现控制器对时间与温度的设定及显示功能,用行显示电路采用串入并出芯片74LS1641动4位数码管实现时间与温度的静态显示。该电路只使用80C5伯^3个端口,配接4片串入并出移位寄存器74LS164与1片三端可调稳压器LM317T其中74LS164的弓唧QAQ7%8位并行输出端;引脚A、B为串行输入端;引脚CLK为时钟脉冲卒&入端,在CLK脉冲的上升沿作用下实现移位,在CLK=0、清除端MR=1时,74LS164呆持原来数据状态;MR=0时,74LS164俞出清零,具显示电路如3.5.3图。图3-5用行口扩展的4位LED显示电路其工作过程如下:80C51的用行口设定在方式0移位寄存器状态下,串行数据由P3.0发送,移位时钟由P3.1送出。在移位时钟的作用下,用行口发送缓冲器的数据一位一位地移入74LS16伸。4片74LS164用级扩展为4个8位并行输出口,分别连接到4个LED!示器的段选端作静态显示。需要指出的是,由于74LS164无并行输出控制端,因而在串行输入过程中,其输出端的状态会不断变化,造成不应显示的字段仍有较暗的亮度,影响了显示的效果。以往的做法是在74LS164的输出端加接4片锁存器或三态门,使移位寄存器串行输入数据时其输出端的变化不反映到LEDh,待串行输入结束后再打开锁存器或三态门,将稳定的显示数据送给LED本设计电路的独特之处在于仅采用了1片三端可调稳压器LM317T317T的3、2脚分别是电压输入、输出端,317T的1脚是电压调整端,脚2输出电压随脚1电压而变化。脚1与接地电阻之间并一个NPN三极管,它的基极受P1.7口线控制,用行输入时P1.7口线为高电平,三极管饱和导通使317T的脚1约为0.3V,脚2输出电压随之下降到1.5V,不足以使共阳极LEDg光,故此时串行输入的影响不会反映到LEDh;串行输入结束后,使P1.7口线为低电平,三极管截止,脚2输出电压因脚1电压增高便上升到2.0V使LEDE常发光。因此,1片三端可调稳压器LM317理至仃4片锁存器的作用使LED显

示不会闪烁。本电路的另一优点是通过可调电位器P1可在线调整脚2的输出电压,使LED勺显示亮度均匀可调,而且省掉了大量的LED艮流电阻。光电隔离与辅助加热电路设计图3-6辅助加热电路图上图为太阳能热水器光电隔离与辅助加热电路设计。当室外光强不足(阴天、下雨)时,对水箱的水提前加热是很必要的,这一电路恰好能完成这一功能。工作原理:当单片机80C51P2.1口输出高电平时,三极管T1导通,致使发光二极管发光,同时光敏三极管T2导通,继电器闭合,电阻丝R1~R4发热,这样就完成了加热任务,此电路虽然简单,但在太阳能热水器中是必不可少的。第四章:控制器的软件设计主程序设计热水器不论在什么样的天气里,都能够在设定的时间向用户提供设定温度的热水,从而给用户带来便利。当控制器在设定的时间使水温达到设

定温度时,将通过声光报警提醒用户。根据这一要求,控制器软件设计采用模块化结构,包括主程序、键盘中断子程序、DS12887M新周期结束中断子程序、LED显示子程序和提前加热时间计算子程序等。系统主程序主要完成温度和水位的检测以及进行辅助加热时间预算和一些初始化功能。在主程序中采用了查表方法进行辅助加热提前量预算。系统主程序流程图如图4所示。图4-1系统程序流程图对于温度和时间设定,每次设定结束后,就将设定值存入DS12887的非易失性RAMfr,下次开机时进行读取。这样作至少有两个优点:一是系统在不进行设定时,就认定该设定值和先前一次一样,解决了每次开机总要从头设定的问题,另一个是若系统在运行中间停电而再次来电时,可以不用重新设定,就能按原设定值对温度进行控制,增强了控制器适应外界变化的能力。对提前加热时间的计算,则是系统能否实现预定功能的重要一环。因为系统采用分段式水位检测,若采用能量守恒的方法对提前加热时间进行预算,也同样得不到精确的结果。为了避开繁琐的计算过程,本系统中采用了模糊控制思想,使用了如下一些控制语句:IF水位高AND温度差大THEN加热时间长IF水位适中AND温度差适中THEN加热时间适中IF水位低AND温度差低THEN加热时间少采用这种思想后,可以用实验方法获得各种情况下需要加热的时间,编制成表格。使用时,只要查表获得提前加热时间就行了。显然,表格分得越细,控制就越准确。本控制器采用温差每等于5c为一格,就能满足控制要求了。为了减小误差,试验表明,可以采用如图5的方法。水位掇叶图4-2水位监测处理示意图实验中,用水位达到B1时的结果代替水位达到A1时的结果,B2代替A2,B3代替A3,B4代替A4这样,CPU读入的A1水位查表后得到的预加热时问是实验中水位在B1处的时间。经过这种处理,会把由于分段检测而产生的计算误差减小一半,由原来的h变成了h/2(h为分段水位检测间隙)。如果水箱水深为40cmi分8段检测,此种处理方法的计算将使水位误差由原来的5cm变成了2.5cm。这种误差对于民用的热水器来说,已完全能够满足要求了。显示子程序分析表明,移位寄存器74LS16私有用入并出作用没有译码功能。因此,在编写显示驱动程序之前,首先需要计算列写出与本电路对应的LE联选码,然后由80C5伯^P3.0口送入74LS164勺用行输入端,再并行输出到LED的段选端。需要指出的是,上面显示电路采用TOS28106BHK号的共阳极LED显示器,根据PC卸制线路板的连线方便,其LED^8个段选端与74LS164勺并行输出口即8根段选线的连接没有遵照通常的规律,而是如图3-5所示的段排列为7、6、4、2、1、9、10、5,相应的段选码也要重新计算,如显示字符0的段选码为11H,显示字符1的段选码为D7Hg。另外,这种稳定的静态显示方式也省去了CPU勺动态扫描过程,此为上述电路的又一特点。电路中设计了4位LED1示器,其功能为:左首位为百位数或标志位,左二位为十位数,左三位为个位数,左四位为小数点后的十分位数。据此,给出如图4-3所小的显小子程序框图。查表取段选码送百位数图4T显示子程序框图结束语该控制器和以往显示仪相比具有性能价格比高、温度控制与显示精度高、使用方便和性能稳定等优点。单片机控制系统具有低价、智能的优势,能够根据需求的不同而作相应的调整,更加个性化。同时,使用单片机控制系统能够节约能源,保护设备,延长设备的使用时间。该热水器具备以下特点:.结构简单、运行可靠、操作维护简便。.热源取之不尽用之不竭,不需要运输,节省燃料。.无污染,不会对周围环境造成任何影响。.热水产量受季节、地区纬度、采热面积、采热器类型、环境温度、供水温度、风速、日照实际等因素影响较大。.该系统加装减压阀后可与锅炉配套使用,解决冬季用水。.不用考虑玻璃盖的防冻装置。该热水器装置置于浴室屋订占地面积较大,同时增加了建筑物的载荷。在试制和安装过程中我们体会到只有注意以下几个方面才能保证热水器的正常运行,第一是循环管道水流方向不允许有反坡现象,拐弯要和缓,管道内要清洁无阻塞。第二是冷水箱、热水箱、集热器及热水保温的相对位置及标高合理,符合水流规律,第三是补充给热水箱的水流不允许冲击,第四是电磁阀的选择及安装位置要合理,保证动作灵敏可靠。总之,无论从市场或技术抑或价格的角度来说,此款热水器具有很大的优势。它市场前景广阔、技术先进、价格合理、高度智能化,方便省事,是当前市面上热水器的升级产品。它不但适合于城乡民宅需求,还适用于写字楼、餐饮、娱乐、商业服务浴室、理发店、旅馆、招待所、托儿所、敬老院及外贸出口等各种需求。参考文献[1]刘福才、刘丰、刘立伟AVR单片机在太阳能热水器智能控制器中的应用。微计算机信息,1999,4。[2]王长胤、文军单片单板机原理及应用[M]o武汉:武汉大学出版社,1993。[3]向奇汝多功能温度控制器[J]自动化与仪器仪表,1999[4]TomFoxBuildtheIntelligentThermometer[J]。Computer&Electronics。January,1983。[4]何立民单片机中、高级教程北京航空航天出版社1999[5]郭廷玮太阳能利用和前景科学普及出版社1986[6]万福君、潘松峰单片机原理系统设计与应用科学技术大学出版社2001口潘永雄、沙河、刘向河电子线路CAD®用教程西安电子科技出版社2001[8]何克忠、李伟计算机控制系统清华大学出版社1998[9]周政新电子设计自动化实践与训练中国民航出版社1998[10]丁志刚、李刚民单片微型计算机原理与应用北京电子工业出版社1990[11]王福瑞单片微机测控系统设计大全[M].北京:北京航空航天大学出版社,1999.[12]金伟正单线数字温度传感器的原理及应用电子技术应用,2000[13]王建萍串行LED显示驱动器及应用电子技术应用1996致谢在我的学习过程及论文的设计编写过程得到了周永勤老师的鼎立相助和悉心指导,以及在完成论文的过程中,系统软件的编写方面得到了一些同学的协助,在此一并表示深深的感谢。

附录一:主程序:ORG000HJMPSTARTSTART附录一:主程序:PretempEQU11HMOVTMOD#53HLCALLInitDS12887;Curtemp存储地址;;Curtemp存储地址;Pretemp存储地址;初始化DS12887时钟芯片;开CPU中断;读温度时间设定值;读水位高度;C清零;预算提前加热时间LCALLReadTempandTimeLCALLReadWaterandPositionCLRCSUBCurtemp,pretempJCOffheatHeatcontinue:LCALLFUZZYLCALLDELAYLCALLHeatSJMP$OffHeat:CLRP2.1RETIHeat:SETBP2.1LCALLDELAYCLRCLCALLReadTempMOVA,CurtempADDA,#2HSUBA,PretempJNCKeepTempJMPHeatcontinueLCALLKeeptempCONRETIInitDS12887:SETBMOVP2DPTRo1,#0BH;初始化DS12887的存器MOVA

温馨提示

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

评论

0/150

提交评论