电冰箱控制电路设计-论文_第1页
电冰箱控制电路设计-论文_第2页
电冰箱控制电路设计-论文_第3页
电冰箱控制电路设计-论文_第4页
电冰箱控制电路设计-论文_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

电冰箱温度控制电路设计摘要:本设计为基于单片机的电冰箱温度控制系统。单片机采用STC89C52RC,温度传感器采用DS18B20,液晶显示器采用1602。本设计可以实现自动调温控制,液晶显示,数字温控,冷藏、冷冻温度调节控制,多温保鲜功能控制,速冻功能等功能。关键词:电冰箱;温度控制电路;单片机;温度传感器

THEDESIGNOFREFRIGERATORTEMPERATURECONTROLCIRCUIT

Abstract:ThisdesignisarefrigeratorcontrolcircuitbasedonSCM.

SCMusedbythisdesignisSTC89C52RC.TemperaturesensorisDS18B20when1602isusedasLCDmonitor.Thisdesigncanachievefunctionsofautomatictemperaturecontrol,LCDdisplay,digitaltemperaturecontrol,coldstorage,refrigeration,multi-temperaturepreservationfunctioncontrol,quickfreezing,etc.KeyWords:Refrigerator;TemperatureControlCircuit;SCM;TemperatureSensor

目录1绪论 11.1引言 11.2课题的背景及意义 11.3国内外发展现状及发展趋势 11.4本设计主要的研究内容 22工作原理和功能 32.1电冰箱工作原理 32.2控制电路工作原理 33硬件电路设计 43.1系统的总体设计 43.2单片机STC89C52RC 73.2.1管脚说明 73.2.2主要特性 83.2.3中断系统 93.2.4运算器 93.3温度传感器DS18B20 103.3.1内部结构与管脚说明 103.3.2主要特性 103.3.3工作原理 113.4LCD1602 153.4.1外形尺寸 153.4.2接口信号说明 153.4.3控制器接口说明 163.4.4指令说明 163.4.5 初始化过程(复位过程) 174程序设计 184.1主函数 184.2接口定义 194.3温度读取子函数 204.4液晶写数据子函数 204.5液晶显示子函数 214.6温度数据处理子函数 224.7按键扫描子函数 235总结 25致谢 26参考文献 27 1绪论1.1引言冰箱是一个深刻改变了人类生活的现代奇迹。在人类发明冰箱之前,保存肉类的唯一方法是将其腌制。而能在夏季喝到冰凉饮料更是一种奢望。随着经济的日益发展,人民的生活水平有了非常大的提高,冷冻设备在旅馆,医院,家庭,科研单位和餐厅得到了广泛的应用。冰箱是冷冻设备的一种,在家庭中它主要被用于冷藏或冷冻蔬菜,食品,水果,饮料以及制作少量的食用冰块。冰箱一般是借以电动压缩机为动力。1.2课题的背景及意义作为冰箱的消费大国,中国每年都会有上千万台的冰箱进入市场。冰箱在给人民的生活带来方便的同时,也消耗着大量的电力资源。地球上的能源无疑是有限的,很多能源都是不可再生能源,因此节约能源早已成为当今世界的一种重要的社会意识,也是尽可能的减少能源消耗、增加能源利用率的一系列有效行为。《中华人民共和国节约能源法》[1]指出“节约资源是我国的基本国策。国家实施节约与开发并举、把节约放在首位的能源发展战略。”同时,中国目前仍以煤为主要资源来进行电力生产。生产过程中会排放大量的二氧化碳及其他有害气体。在常规能源逐渐耗尽和生态环境日加恶化这两大危机夹击下,推广节能冰箱无疑可以使有害气体的排放量得到很大幅度削减,非常有利于减轻大气污染,并将推动能源的可持续利用。电冰箱温度控制系统采用基于单片机,不仅可以大大缩短设计新产品所需的时间,同时只要增加少量外围器件,在软件设计方面就可以实现功能的扩展,和智能方面的提高,给人们提供越来越多的功能,越来越人性化智能化的操作感受。同时因为单片机造价低、开发周期短,使得基于单片机的电冰箱价格相对较低,使更多的人,特别是农村地区的消费者能够消费得起。本设计所研究的冰箱,其温度控制电路通过单片机来产生PWM信号,再用PWM信号控制功率模块去实现压缩机的变频控制。根据温度的检测反馈的信号来调节变频范围,使压缩机达到工作的最佳状态,来实现可变制冷,从而达到节能的效果。1.3国内外发展现状及发展趋势市场上目前销售的双门直冷式电冰箱,一般含有冷冻室和冷藏室。冷冻室通常被用于冷冻的温度是-6~-18℃;因为要求有一定的保鲜作用,不能冻伤食品,冷藏室常用在相对冷冻室较高的温度下来存放食品,冷藏室室温一般为0~10℃[2]。传统的电冰箱的温度一般是由冷藏室来控制,冷藏室、冷冻室的不同温度通过调节蒸发器在两个室的面积大小实现。冰箱内的温度会受诸多因素的影响,如放入冰箱的物品初始温度的高低、存放品散热特性和热容量、物品在冰箱内的充满率、环境温度高低、开门的频繁程度等等。因此这种受控参数和随机因素很多的温度控制,难以建立一个标准的数学模型,或者也无法用传统的PID调节去实现。一台品质好的电冰箱应该具备较高的温度控制精度,同时又具有最优的节能效果。为了达到这样的设计要求,采用模糊控制技术无疑会是最佳的选择[3]为了顺应市场的需要,更好地满足广大的消费者不断提高的消费需求,各大电冰箱厂商都在不断地在改进原有的产品,开发新产品,使电冰箱的功能更加的完善,规格更加的齐全。像模糊逻辑控制、采用变频或双转子旋转式压缩机、自动致病、自动除臭抗菌等、无CFC技术已被广范运用于电冰箱之中。在多能源冰箱开发方面,国外在吸收式、吸附式冰箱方面迅速发展[4]。近几年来,日本三洋公司在吸收式电冰箱方面突破了一些技术难关,已发展到耗电量可与压缩式冰箱相近似的水平。全世界目前吸收式和吸附式电冰箱的年产量约为150万台。其中以瑞士和瑞典的产量最多,质量最好。近年来,半导体冰箱,太阳能冰箱也格外引人注目。采用滚动转子式的压缩机,不仅质量减轻,体积减小,而且能耗降低。日本目前100W以上的滚动转子式压缩机已经投入使用,用电量比同类冰箱少20%~25%。而应用单片机控制的冰箱,其节电量可达15%~20%[5]。1.4本设计主要的研究内容随着集成电路技术的日益发展,单片机的功能也不断增强,不断涌现出来许多高性能的新型机种。单片机因其体积小、功能强、造价低、可靠性很高和开发周期短等优点,被广泛应用于自动化和各个测控领域,成为工业生产中不可缺少的器件,尤其在日常生活中发挥着越来越大的作用。同时,人们对家用电冰箱的控制功能要求越来越高,这就对电冰箱控制器提出了更高要求。智能化,多功能是其发展方向之一。简单的电子控制,传统的机器控制已经难以满足发展的要求。电冰箱温度控制系统采用基于单片机,不仅可以大大缩短设计新产品所需的时间,同时只要增加少量外围器件,在软件设计方面就可以实现功能的扩展,和智能化方面的提高。因此可以最大限度地节约成本。本文即为基于单片机的电冰箱温度控制系统。电冰箱的控制原理,是依据蒸发器的温度来控制制冷压缩机的启动、停止,使冰箱内的温度处于设定的温度范围内。一般当蒸发器的温度高于10℃时,压缩机启动,制冷;当温度低于-18℃的时候,停止制冷,关闭压缩机。采用单片机控制,能够使控制更准确、灵活。本设计可以实现自动调温控制,液晶显示,数字温控,冷藏、冷冻温度调节控制,多温保鲜功能控制,

2工作原理和功能2.1电冰箱工作原理冰箱的基本原理比较简单:冰箱利用液体蒸发来吸收热量。电冰箱中使用的液体(即制冷剂),能够在极低的温度下蒸发,使得冰箱内部保持冰冻温度。假如把冰箱的制冷剂放在皮肤上,它因蒸发会使皮肤冻伤[6]。所有的冰箱都由五个基本部分组成:压缩机安全阀热交换管:冰箱外部呈盘曲状或弯曲的管道制冷剂:冰箱内蒸发来制造低温的液体冷交换管:冰箱内部呈盘曲状或弯曲的管道很多工业冰箱会使用纯氨作为制冷剂,纯氨会在-32℃压缩机压缩制冷剂气体,这会升高制冷剂的温度和压力。冰箱外部的热交换线圈会帮助制冷剂散发掉加压产生的热量。当制冷剂冷却的时候,制冷剂液化成液体形式,并且流经安全阀。当制冷剂流过安全阀时,液态制冷剂将从高压区向低压区流动,因此它会膨胀并蒸发。在蒸发的过程中,它会吸收热量,产生制冷效果。冰箱内的线圈能帮助制冷剂吸收热量,使得冰箱内部保持低温。之后重复此循环。这就基本上阐述了冰箱的工作原理[7]。2.2控制电路工作原理冷藏室和冷冻室各有一个温度传感器DS18B20,实时监测两室的温度,在液晶显示器1602上呈现。通过功能按键可以设定冷藏室和冷冻室的温度。当单片机将从温度传感器读取的温度值与设定温度值相比较,若发现实时温度较设定温度值高,则发出PWM信号,使对应的发光二极管亮,并启动压缩机制冷。制冷至实时温度低于设定值时,单片机在比较后,发出PWM信号,使对应的发光二极管熄灭,并停止压缩机制冷。

3硬件电路设计3.1系统的总体设计该电冰箱控制系统的体系结构要求基于单片机为核心控制器,能实现对电冰箱的人工智能,自动调温控制,LCD(液晶显示器)显示,数字温控,冷藏、冷冻温度调节控制,多温保鲜功能控制;速冻功能[8]。系统组成如图3-1所示。LCD显示单片机STC89C52RCLCD显示单片机STC89C52RC环境温度LED指示冷藏室温度LED指示冷藏室温度冷冻室温度冷冻室温度压缩机PWM信号键盘压缩机PWM信号键盘图3-1系统组成图控制电路图如图2所示。图3-2控制电路图本设计可实现以下功能:液晶显示:利用LCD显示冷冻室、冷藏室温度,动态显示电冰箱的运行情况。图3-3液晶显示图数字温控,冷冻、冷藏温度调节:利用功能键分别控制冷冻室、冷藏室温度设定、速冻设定等,冷冻温度可设置在-6~-18℃之间;冷藏温度可设置在0℃~10图3-4数字温控图冷藏、冷冻温度调节:当温度超过设定温度时,电冰箱可以自动启动压缩机制冷,直至温度小于等于设定温度。图3-5LED灯指示图多温保鲜功能:通过对冰箱的温度控制,使电冰箱可设置多个温度。不同的温度适合存放不同类别与期限的食物。速冻功能:采用细胞保活技术,用超强制冷能力,使得食品迅速通过最大冰晶生成带,使细胞结构不被破坏,细胞活力得以保持,不流失营养成分,保鲜效果好。3.2单片机STC89C52RC3.2.1管脚说明图3-6管脚图GND:接地VCC:供电电压P0口:一个8位的漏级开路双向I/O口。每只脚可吸收8TTL门电流,当P1口管脚被第一次写1时,被定义为高阻输入,P0可用做于外部程序数据存储器。可以将其定义为数据/地址的第八位,在FIASH编程时,原码输入口采用P0口。FIASH进行校验时,P0输出原码,此时必须被拉高P0外部。P1口:是一个内部的提供上拉电阻的8位双向I/O口。P1口缓冲器能够接收输出4TTL门电流。当P1口管脚写入1后,被内部上拉成高,可用作输入;P1口被外部下拉成低电平时,输出电流,这是因为内部上拉的缘故。在FLASH编程和校验的时候,P1口做为第八位地址接收。P2口:为一个内部的上拉电阻的8位双向I/O口。P2口缓冲器可接收,输出四个TTL门电流。当P2口被写“1”的时侯,内部上拉电阻将其管脚拉高,而且作为输入。并在作为输入时,P2口的管脚会被外部拉低,将输出电流,这是因为内部上拉的缘故。P2口当被用于外部程序存储器或者16位地址外部数据存储器而进行存取时,P2口输出的地址的高八位,在给出地址“1”时,它将利用内部上拉优势。当对外部的八位地址数据存储器进行读写的时候,P2口输出特殊功能寄存器的内容,P2口在FLASH编程和校验的时候接收高八位P3口:管脚是8个的带内部上拉电阻的双向I/O口,可以接收输出四个TTL门电流。当P3口在写入“1”后,它们会被内部上拉为高电平,并用用作输入。作为输入,因为外部下拉为低电平,P3口将输出电流(ILL),这是因为P3口也可以作为8052的一些特殊功能口,所列如下:管脚备选功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2/INT0(外部中断0)P3.3/INT1(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)

也能用P3口为闪烁编程和编程校验来接收一些控制信号。ALE/PROG:访问外部存储器时,地址锁存所允许的输出电平,用于锁存地址的地址字节。在FLASH编程时,用此引脚输入编程脉冲。平时,ALE端输出不变频率的正脉冲信号,此频率是振荡器频率的1/6。因此可用它作为外部输出的脉冲或用于定时的目的[10]。但是要注意的是:每当将其作为外部数据存储器时,会跳过一个ALE脉冲。假如禁止ALE的输出,可以在SFR8EH地址上置0。这时,ALE只有在执行MOVX和MOVC指令时才会起作用。此外,该引脚被稍微拉高。如果微处理器在外部来执行状态ALE禁止,置位将无效。RST:复位输入。在振荡器复位器件时,需保持RST脚的两个机器周期的高电平时间。/PSEN:外部程序存储器得选通信号。在由外部程序存储器取指令期间,每个机器周期两次/PSEN有效;但是在访问外部数据存储器的时侯,这两次有效的/PSEN信号将会不出现。XTAL1:反向振荡放大器输入和内部时钟工作电路输入。XTAL2:反向振荡器的输出。/EA/VPP:当/EA处于低电平时,在此期间外部程序存储器(0000H-FFFFH),不论是否有内部程序存储器,注意加密方式为1时,/EA将内部锁定成RESET;当/EA端处在高电平时,此间内部程序存储器。在FLASH编程时,此引脚也被用于施加12V的编程电源(VPP)[9]。3.2.2主要特性52系列单片机主要拥有以下一些特点:8位CPU。片内带128字节的数据存储器(RAM)。片内带4KB的程序存储器(ROM)。程序存储器的寻址空间为64KB。片外数据存储器的寻址空间为64KB。128个用户位寻址空间。21个字节特殊功能寄存器。4个8位并行I/0接口:P0、P1、P2、P3。2个16位定时器/计数器。5个优先级别的中断源。1个全双工的串行I/O接口,可多机通信。有较强的位处理能力。采用单一+5V电源供电。3.2.3中断系统STC89C52RC单片机的中断系统实用简单,其它的基本特点是:5个固定的可屏蔽的中断源,2个在片外,3个在片内。在程序存储器中,它们各有固定的中断入口地址,从此进入中断服务程序;这5个中断源内有两级中断优先级,可以形成中断嵌套[11]。用2个特殊功能寄存器来中断控制和条件设置的编程。这5个中断源的符号、名称和产生条件如下:T0:定时器/计数器0中断。由T0计满回零引起;

T1:定时器/计数器l中断。由T1计满回零引起;

TI/RI:串行I/O中断。串行端口完成一帧字符发送/接收后引起;

INT0:外部中断0。由P3.2端口线引入,低电平或下跳沿引起;

INT1:外部中断1。由P3.3端口线引入,低电平或下跳沿引起;3.2.4运算器累加器A:在算术/逻辑运算中,放置一个操作数或是结果,在和外部存储器及I/O接口打交道时,所进行数据的传送都要经过A来达成。寄存器B:在*、/运算中,要使用寄存器B。做乘法时,B用来放置乘数以及积的高字节;做除法时,B用来放置除数及余数;不做乘除时,可以将B作为通用寄存器来使用.算术/逻辑部件ALU:用来完成+、-、*、/的算术运算和布尔代数的逻辑运算,并且通过运算结果,来影响程序状态寄存器PSW的一些位,从而来为转移、判断、出错和十进制修正等等提供依据。程序状态标志寄存器PSW:将其用来存放当前的指令执行之后操作结果的某些特征,从而为下一条的指令执行提供依据。3.3温度传感器DS18B203.3.1内部结构与管脚说明DS18B20内部结构主要由四个部分组成:温度传感器、64位光刻ROM、非挥发的温度报警触发器TH和TL及配置寄存器。图3-7DS18B20VDD:外接供电电源输入端(在寄生电源接线方式时接地)。DQ:数字信号输入/输出端。GND:电源地。3.3.2主要特性DS18B20能支持多点组网的功能,多个DS18B20可并联在唯一的三线上面,实现组网多点测温。独特的单线接口方式:DS18B20在和微处理器连接时,只需要一条口线就能实现DS18B20和微处理器的双向通讯。能适应范围更宽的电压,电压范围:3.0~5.5V。在寄生电源方式下,数据线可供电。DS18B20在使用中无需任何外围器件,全部转换电路和传感元件集成在一个形如三极管的集成电路里面。9位分辨率时,最多于93.75ms内把温度转换成数字;在12位分辨率时,最长可在750ms内把温度转换成数字,速度更快。能编程的分辨率是9~12位,对应的分辨温度分别是0.5℃、0.25℃、0.125℃及0.0625℃,可以实现高精度测温。测温范围:-55℃~+125℃。在-10~+85℃时的精度为±0.5℃。测量结果会直接输出数字的温度信号,以"一线总线"串行来传送给CPU。同时能传送CRC校验码,具备极强的抗干扰纠错能力。负压特性:当电源极性接反的时候,芯片不会因为发热而烧毁,但是不能够正常工作。3.3.3工作原理(1)斜率累加器斜率累加器比较预置比较预置低温度系数晶振计数器1低温度系数晶振计数器1预置预置温度寄存器=0温度寄存器=0计数器2高温度系数晶振计数器2高温度系数晶振=0=0图3-8DS18B20测温原理框图DS18B20的测温原理和读写时序与DS1820相同,只是得到温度值的位数会因分辨率的不同而不同,而且温度转换时的延时时间从2s减至750ms。其测温原理如图3所示。图中的低温度系数晶振,其振荡频率受温度的影响很小,被用来产生送给计数器1的固定频率的脉冲信号。高温度系数晶振的振荡率会随温度变化而明显改变,产生的信号做为计数器2的脉冲输入;温度寄存器和计数器1被预置在-55℃所对应的一个基数值上。计数器1对低温度系数晶振产生的脉冲信号做减法计数。当计数器1的预置值减到0的时候,温度寄存器的值会加1,计数器1的预置将被重新装入,计数器1会重新开始对低温度系数晶振所产生的脉冲信号做计数[13]。如此循环直至计数器2计数到0,停止温度寄存器值累加。这时温度寄存器中的数值就是所测的温度。图3中的斜率累加器用来补偿及修正测温过程中出现的非线性,其输出用来(2)表3-1DS18B20温度值格式表bit7bit6bit5bit4bit3bit2bit1bit0232221202-12-22-32-4LSBytebit15bit14bit13bit12bit11bit10bit9bit8SSSSS262524MSByteDS18B20有4个主要的数据部件:(1)DS18B20可完成对温度的测量。用12位转化为例:用16位的符号扩展的二进制补码读数的形式提供,以0.0625℃/LSB的形式表达。其中S是符号位。(2)光刻ROM中的64位序列号为出厂前光刻好的。它可以看作是此DS18B20的地址序列码;64位光刻ROM的排列为:开始8位(28H)乃产品类型标号,其次48位是该DS18B20本身的序列号,最后8位为前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20全都不同。这样就能实现一根总线上挂接着(3)表3-2DS18B20温度数据表温度。C数据输出(二进制)数据输出(十六进制+125000001111101000007D0h+8500000101010100000550h+10.12500000001100100010191h+25.0625000000001010001000A2h+0.500000000000010000008h000000000000000000000h—0.51111111111111000FFF8h—10.1251111111101011110FF5Eh—25.06251111111001101111FF6Eh—551111110010010000FC90h这是12位转化后所得到的12位数据,被存储在DS18B20的两个8比特的RAM内,二进制里的前面5位为符号位。如果所测得温度大于0,则这5位为0,只要把测得的数值乘以0.0625,就可得到实际温度。如果温度小于0,则这5位为1,测到的数值则需要取反加1,再乘以0.0625就能得到实际的温度[14]。比如+125℃的数字输出是07D0H,+25.0625℃的数字输出是0191H,-25.0625℃的数字输出是FE6FH,-55(4)温度传感器DS18B20的存储器包括一个非易失性的可电擦除EEPRAM和一个高速暂存RAM。前者用于存放高温度触发器TH和低温度触发器TL及结构寄存器。(5)表3-3配置寄存器结构TMR1R011111配置寄存器该字节各位的意义如下:低五位都是"1"。TM为测试模式位,用来设置DS18B20处在工作模式还是处于测试模式。在DS18B20出厂的时候该位被设置成0,用户不要改动。R0和R1用来设置分辨率,同下表所示(DS18B20出厂时被设置为12位):表3-4温度分辨率设置表R1R0分辨率温度最大转换时间009位93.75ms0110位187.5ms1011位375ms1112位750ms(6)表3-5DS18B20暂存寄存器分布寄存器内容字节地址温度值低位(LSByte)0温度值高位(MSByte)1高温限值(TH)2低温限值(TL)3配置寄存器4保留5保留6保留7CRC校验8高速暂存存储器由9字节组成,其分配如表3-5所示。在温度转换命令发布之后,经转换所得温度值以二字节补码的形式存放在高速暂存存储器的第0字节和第1个字节。单片机可以通过单线接口来读到该数据[15]。读取时,高位在后,低位在前,数据格式如表3-1所示,对应的温度计算为:当符号位S=0时,直接把二进制位转换为十进制。当S=1时,先吧补码变成原码,再计算十进制值。表3-2为对应的一部分温度值。第九个字节为冗余检验字节。(7)表3-6ROM指令表指令约定代码功能读ROM33H读DS18B20温度传感器ROM中的编码(即64位地址)符合ROM55H发出此命令后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS18B20使之作出响应,为下一步对该DS18B20得读写做准备。搜索ROM0FOH用于确定挂接在同一总线上DS18B20的个数和识别64位ROM地址。为操作各器件做好准备。跳过ROM0CCH忽略64位ROM地址,直接向DS18B20发温度变换指令。适用单片工作。告警搜索命令0ECH执行后只有温度超过设定上限或下限的片子才作出响应。表3-7RAM指令表指令约定代码功能温度变换44H启动DS18B20进行温度转换,12位转换时最长为750ms,结果存入内部9字节RAM中。读暂存器0BEH读内部RAM9字节的内容。写暂存器4EH发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。复制暂存器48H将RAM的3、4字节的内容复制到EEPROM中。重调EEPROM0B8H将EEPROM中的内容恢复到RAM的3、4字节中。读供电方式0B4H读DS18B20的供电模式。寄生供电是DS18B20发送“0”,外接电源供电发送“1”。根据DS18B20通讯协议,单片机控制DS18B20完成温度转换必须要经过三个步骤:每次读写之前都需对DS18B20进行复位操作。在复位成功后要发送一条ROM指令,最后再发送RAM指令。如此才能对DS18B20进行预定操作。复位要求CPU将数据线下拉500微秒,然后再释放。在DS18B20收到信号后,等16~60微秒左右后发出60~240微秒的存在低脉冲,在主CPU收到此信号后表示复位成功[12]。3.4LCD16023.4.1外形尺寸图3-9LCD1602外形尺寸图3.4.2接口信号说明表3-8接口信号说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2DataI/O2VDD电源正极10D3DataI/O3VL液晶显示偏压信号11D4DataI/O4RS数据/命令选择端(H/L)12D5DataI/O5R/W读写选择端(H/L)13D6DataI/O6E使能信号14D7DataI/O7D0DataI/O15BLA背光源正极8D1DataI/O16BLA背光源正极3.4.3控制器接口说明(1)基本操作时序:读状态:输入RS=L,RW=H输出D0~D7=状态字写指令:输入RS=L,RW=H,D0~D7=指令码,E=高脉冲输出无读数据:输入RS=H,RW=H,E=H输出D0~D7=数据写数据:输入RS=H,RW=L,D0~D7=数据,E=高脉冲输出无(2)状态字说明表3-9状态字说明表STA7STA6STA5STA4STA3STA2STA1STA0D7D6D5D4D3D2D1D0SAT0-6当前数据地址指针的数值STA7读写操作使能1:禁止0:允许注:对控制器每次进行读写操作之前,都必须进行读写测试,确保STA7为0。3.4.4指令说明(1)初始化设置显示模式设置表3-10显示模式设置表指令码功能00111000设置16X2显示,5X7点阵,8位数据接口显示开/关及光标设置表3-11显示开/关及光标设置表指令功能00001DCBD=1开显示;D=0关显示C=1显示光标;D=0不显示光标B=1光标闪烁;B=0光标不闪烁000001NSN=1当读或写一个字符后地址指针加一,且光标加一;N=1当读或写一个字符后地址指针减一,且光标减一;S=1当写一个字符,整屏显示左移(N=1)或右移(N=0),以得到光标不移动而屏幕移动的效果;S=0当写一个字符,整屏显示不移动;(2)数据控制控制器内部设置有一个数据地址指针,用户可通过他们来访问内部的全部80字节RAM。数据指针设置表3-12显示开/关及光标设置表指令码功能80H+地址码(0-27H,40H-67H)设置数据地址指针其他设置表3-13其他设置表指令码功能01H显示清屏:1.数据指针清零2.所有显示清零02H显示清屏:1.数据指针清零初始化过程(复位过程)延时15ms写指令38H(不检测忙信号)延时5ms写指令38H(不检测忙信号)延时5ms写指令38H(不检测忙信号)写指令38H:显示模式设置写指令08H:显示关闭写指令01H:显示清屏写指令06H:显示光标移动设置写指令0CH:显示开/及光标设置

4程序设计本设计程序主要由主函数、多个功能子函数组成,主函数调用功能子函数。子函数尽可能少调用其它子函数,以保证系统稳定运行。4.1主函数主函数调用初始化、键盘扫描、温度采集、液晶显示和温度比较等功能子函数,实现温度采集,按键扫描,数据处理和温度显示等功能,是程序的主干部分。流程图:开始开始液晶初始化液晶初始化K1按下K1按下 NY扫描两路温度,存到全局变量 扫描两路温度,存到全局变量显示所测得的温度temp1 Y显示所测得的温度temp1显示所测得的温度temp2显示所测得的温度temp2将测得的温度与限温比较将测得的温度与限温比较按键扫描按键扫描结束结束 图4-1主函数流程图4.2接口定义两发光二极管分别接P2.5和P2.6口sbitLED1=P2^5;//sbit位定义sbitLED2=P2^4;按键分别接P3.5、P3.6和P3.7口sbitK1=P3^5;sbitK2=P3^6;sbitK3=P3^7;P2口DS18B20接口#defineDS10x02#defineDS20x011602控制接口,复位键接P2.7,使能键接P2.6。sbitrs=P2^7;//rs复位键sbitlcden=P2^6;//lcden使能键1602数字表ucharcodetabn[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x2e,0x2b,0x2d,0x3a}; //0,1,2,3,4,5,6,7,8,9,.,+,-,:4.3温度读取子函数先初始化DS18B20,然后做个毫秒级延时,再从引脚读取数据,最后进行一系列的温度计算,最后输出所测得的温度。流程图:开始开始初始化DSt初始化DSt延时1ms级延时1ms级向DSt写指令:忽略ROM指令向DSt写指令:忽略ROM指令向DSt写指令:读取暂存器指令向DSt写指令:读取暂存器指令a=tmpread(DSt)a=tmpread(DSt);b=tmpread(DSt)温度计算温度计算输出temp输出temp结束结束图4-2读取温度值子函数流程图4.4液晶写数据子函数先复位,将使能键拉低,再将数据赋给P1口,延时后拉高使能键,延时后再拉低使能键,最后成功把数据写入1602。流程图:开始开始rs=1rs=1;lcden=0将要写入的数据date赋给P1口将要写入的数据date赋给P1口延时1ms级延时1ms级lcden=1lcden=1延时1ms级延时1ms级lcden=lcden=0返回返回图4-3向1602写数据子函数流程图4.5液晶显示子函数先定义数据类型,再通过取余数和取商得到获取要显示温度的个位十位和小数后一位的数值,最后写入要显示温度的个位十位小数点和小数后一位的数值,就能将要显示的温度通过液晶显示出来。开始流程图:开始获取要显示温度的个位十位和小数后一位的数值获取要显示温度的个位十位和小数后一位的数值写入要显示温度的个位十位小数点和小数后一位的数值写入要显示温度的个位十位小数点和小数后一位的数值结束结束图4-4液晶温度显示子函数流程图4.6温度数据处理子函数将所测得的温度与设定的限温值相比较。若所测得的温度大于设定的限温值,则LED灯亮;若所测得的温度小于等于设定的限温值,则LED灯仍灭。流程图:开始开始Temp1>Ref1 N YLED1仍不亮LED1仍不亮LED1灯亮Temp2>Ref2LED2灯亮Temp2>Ref2LED2灯亮 NYLEDLED2仍不亮结束结束图4-5温数据比较处理子函数流程图4.7按键扫描子函数扫描按键,若K1按下,则LED1灯和LED1灯闪一下,并使LCD整体显示开,游标开,反白开。接着分别判断K2和K3按下时,根据K1按键次数,实现限温值设置、液晶显示等功能。开始开始K1按下 N YLED1LED1灯和LED1灯闪一下整体显示开,游标开,反白开整体显示开,游标开,反白开K3按下keynum显示Ref1数值Ref1--退出此switch语句K2按下keynumRef1++退出此switch语句K3按下keynum显示Ref1数值Ref1--退出此switch语句K2按下keynumRef1++退出此switch语句 1 default 21default2Ref2--Ref2++Ref2--Ref2++显示Re2数值显示Re2数值显示Ref1数值显示Re2数值显示Ref1数值显示Re2数值结束结束图4-6按键扫描子函数图5总结本次毕业设计让我受益匪浅,让我更进一步地掌握了单片机知识,学习了温度传感器DS18B20和液晶显示器LCD1602的使用方法,同时加强了编程能力。“授人以鱼,不如授人以渔”。从此次毕业设计过程中,我学会了以下做课题研究的方法:先寻找相关资料和课题,并充分理解掌握。然后根据自己所要研究的课题,做出整体规划,理清思路。再在设计过程中,根据实际情况和自己的专业知识,多方面思考,多方面探索,不断改善和提高课题研究。遇到问题时,自己先进行全面细致的分析。假若还找不到原因,应该多同他人探讨学习。要学会用理论知识去指导设计过程,帮助解决遇到的问题。同时,动手实践又能很好的验证所学理论,加强知识基础。本毕业设计,主要有以下几个特点:以LED灯的亮灭来指示电冰箱核心部件压缩机的状态,起到了很好的指示作用。尽可能将程序设计和硬件电路简单化,以提高系统的稳定性。采用体积小、速度快、价格低廉的单片机STC89C52RC,做出了价格低、可靠性强和节能的电冰箱控制控制系统。产品设计成本低,有助于产品的推广、民用化。

致谢略参考文献[1]第十届全国人民代表大会常务委员会.中华人民共和国节约能源法[M].北京:中国法制出版社,2007.11:23.[2]陈延奎.基于MCS-51单片机的电冰箱控制器[J].电子工程师,2008,34(2):77-79.[3]吕佩举.一种基于单片机的变频电冰箱控制系统[J].家电科技,2004,21(8):79-80.[4]洪华.单片机在智能冰箱控制中的研究与应用[J].科技创新导报,2009,45(33):45.[5]赵明富,张聪品,吴东芳.电冰箱模糊控制的算法及应用[J].河南师范大学学报(自然科学版),2005,33(2):125-127.[6]闫朝华,潘灯海.半导体制冷应用在电冰箱上的研究[J].家电科技,2002,14(12):64-65.[7]黄布毅,崔光照.模糊控制技术在家用电器中的应用[M].北京:中国轻工业出版社,1998.8:18-19.[8]舒怀林.单片机原理与接口技术[M].武汉:华中科技大学出版社,2001.4:32-35.[9]宏晶科技.STC89C51RC-RD+_GUIDE-CHINESE.[M].深圳:深圳出版社,2009.5:15-19.[10]窦振中.模糊逻辑控制技术及其应用[M].北京:北京航空航天大学出版社,1995.3:25.[11]杨存祥,李淑君,吴晓平.语音电冰箱微控制器的研制[J].组合机床与自动化加工技术,2004,10(11):53-54.[12]徐亦朱.DS18B20中文手册[M].安徽:安徽大学出版社,2007.2:2-4.[13]李银华.BCD-278WB电冰箱模糊控制器的研制[J].郑州轻工业学院学报,1998,21(4):36-39.[14]N.S.Ashraf.DESIGNANDANALYSISOFAMESO-SCALEREFRIGERATOR[D].Orlando,USA:UniversityofCentral[15]Dalus,LTD.SOLARPOWEREDVACCINEREFRIGERATOR[D].Powys,UK:DAlus,LTD,2005.基于C8051F单片机直流电动机反馈控制系统的设计与研究基于单片机的嵌入式Web服务器的研究MOTOROLA单片机MC68HC(8)05PV8/A内嵌EEPROM的工艺和制程方法及对良率的影响研究基于模糊控制的电阻钎焊单片机温度控制系统的研制基于MCS-51系列单片机的通用控制模块的研究基于单片机实现的供暖系统最佳启停自校正(STR)调节器单片机控制的二级倒立摆系统的研究基于增强型51系列单片机的TCP/IP协议栈的实现基于单片机的蓄电池自动监测系统基于32位嵌入式单片机系统的图像采集与处理技术的研究基于单片机的作物营养诊断专家系统的研究基于单片机的交流伺服电机运动控制系统研究与开发基于单片机的泵管内壁硬度测试仪的研制基于单片机的自动找平控制系统研究基于C8051F040单片机的嵌入式系统开发基于单片机的液压动力系统状态监测仪开发模糊Smith智能控制方法的研究及其单片机实现一种基于单片机的轴快流CO〈,2〉激光器的手持控制面板的研制基于双单片机冲床数控系统的研究基于CYGNAL单片机的在线间歇式浊度仪的研制基于单片机的喷油泵试验台控制器的研制基于单片机的软起动器的研究和设计基于单片机控制的高速快走丝电火花线切割机床短循环走丝方式研究基于单片机的机电产品控制系统开发基于PIC单片机的智能手机充电器基于单片机的实时内核设计及其应用研究基于单片机的远程抄表系统的设计与研究基于单片机的烟气二氧化硫浓度检测仪的研制基于微型光谱仪的单片机系统单片机系统软件构件开发的技术研究基于单片机的液体点滴速度自动检测仪的研制基于单片机系统的多功能温度测量仪的研制基于PIC单片机的电能采集终端的设计和应用基于单片机的光纤光栅解调仪的研制气压式线性摩擦焊机单片机控制系统的研制基于单片机的数字磁通门传感器基于单片机的旋转变压器-数字转换器的研究基于单片机的光纤Bragg光栅解调系统的研究单片机控制的便携式多功能乳腺治疗仪的研制基于C8051F020单片机的多生理信号检测仪基于单片机的电机运动控制系统设计Pico专用单片机核的可测性设计研究基于MCS-51单片机的热量计基于双单片机的智能遥测微型气象站MCS-51单片机构建机器人的实践研究基于单片机的轮轨力检测基于单片机的GPS定位仪的研究与实现基于单片机的电液伺服控制系统用于单片机系统的MMC卡文件系统研制基于单片机的时控和计数系统性能优化的研究基于单片机和CPLD的粗光栅

温馨提示

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

评论

0/150

提交评论