《基于单片机的智能冰箱温度控制器的设计(共53页).doc》由会员分享,可在线阅读,更多相关《基于单片机的智能冰箱温度控制器的设计(共53页).doc(53页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上基于单片机的智能冰箱温度控制器的设计摘 要随着生活水平的提高,科技的发展,电冰箱已经成为每个家庭必备的家用电器。同时,随着人们的不同需求,电冰箱的样式在多样化,功能也在智能化,给人们的生活带来了很多方便。本文首先介绍了电冰箱的国内外发展情况,其次对设计的硬件部分和软件部分进行详细的描述。电冰箱温度控制系统是利用温度传感器DS18B20采集电冰箱冷藏室和冷冻室的温度以及蒸发器表面温度。通过INTEl公司的高效微控制器MCS-51单片机进行数字信号处理,从而达到智能控制的目的。本系统可实现电冰箱冷藏室和冷冻室的温度设置、电冰箱自动除霜、开门报警等功能。通过对直冷式电冰箱制
2、冷系统的改进和采用模糊控制技术,实现了电冰箱的双温双控,使电冰箱能根据使用条件的变化迅速合理地调节制冷量,且节能效果良好。 关键词:电冰箱,单片机,温度传感器,温度控制DESIGN OF THE INTELLIGENT REFRIGERATOR TEMPERATURE CONTROLLER BASED ON MICROCONTROLLER UNITABSTRACTWith the improvement of living standards, technological development, refrigerators have become an essential household
3、 appliances .At the same time , as peoples different needs and refrigerators in the diversity of style, functionality is also intelligent, it has brought a lot of convenience to peoples life.This paper describes the development of the temperature controller ,followed by the design of hardware and so
4、ftware parts described in detail.The electric refrigerator temperature control system is uses the temperature sensor DS18B20 gathering electric refrigerator cold-storageroom and the freezing room temperature with cvaporating surface temperature monolithic integrated circuit carries on the digital si
5、gnal processing through INTEL corporations highly effective micro controller MCS-C51,thus achieves the intelligent control the goal.This system may realize the electric refrigerator cold-storageroom and the freezing room temperature establishment,the electric refrigerator automatically defrosts,open
6、s the gate to report to the police and so on the function . By improving the refrigerating system of refrigerator and applying the vague-control technology the goal of double-temperature double-control has been realized;it makes possible for the refrigerator to regulate the amount of cold air in a s
7、peedy and rational way. Thus,power saving is available.KEY WORDS: The temperature sensor ,The one-chip computer,The electric refrigerator,Temperature control专心-专注-专业目录前言在工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。其中,温度控制也越来越重要。在工业生产的很多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优
8、点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的控制问题。温度控制系统在国内各行各业的应用虽然己经十分广泛,但从国内生产的温度控制器来讲,总体发展水平仍然不高,同日本、美国、德国等先进国家相比,仍然有着较大的差距。成熟的温控产品主要以“点位”控制及常规的PID控制器为主,它们只能适应一般温度系统控制,而用于较高控制场合的智能化、自适应控制仪表,国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。随着我国经济的发展及加入WTO,我国政府及企业对此都非常重视,对相关企业资源进行了重组,相继建立了一些国家,企
9、业的研发中心,开展创新性研究,使我国仪表工业得到了迅速的发展。 目前,温度控制器产品从模拟、集成温度控制器发展到智能数码温度控制器。智能温控器(数字温控器)是微电子技术、计算机技术和自动测试技术的结合,特点是能输出温度数据及相关的温度控制量,适配各种控制器,并且它是在硬件的基础上通过软件来实现控制功能的,其智能化程度也取决于软件的开发水平,现阶段正朝着高精度高质量的方向发展,相信以我国的实力,温控技术在不久的将来一定会为于世界前列!第1章 绪论1.1温度控制器的发展状况 温度是表征物体冷热程度的物理量,是工业生产和日常生活中经常测量的物理量,也是人类研究最早测量方法最多的物理量之一。因而温度检
10、测仪应用领域之广,使用数量之多,一直高居各类测量仪之首。近百年来,温度传感器的发展大致经历了以下三个阶段:传统的分立式温度传感器(含敏感元件);模拟集成温度传感器/控制器;智能温度传感器(即数字温度传感器)。 1. 分立式温度传感器 传统的热电偶、热电阻、热敏电阻及半导体温度传感器,均属于分立式温度传感器,传感器本身就是一个完整的、独立的感温元件。此类传感器通常要配温度变送器,以获得标准的模拟量(电压或电流)输出信号。2. 模拟集成温度传感器/控制器集成传感器是采用硅半导体集成工艺而制成的,因此亦称硅传感器或单片集成传感器。可完成温度测量及模拟信号输出功能的专用IC,它属于一种简单的集成温度传
11、感器,适合远距离测量、控温,不需要进行非线性校准,典型产品有AD590、AD592等。模拟集成温度控制器主要包括温控开关、可编程温度控制器,典型产品有LM56、AD22105和MAX6509。3. 智能温度传感器智能温度传感器(亦称数字温度传感器)是在20世纪90年代中期问世的。智能温度传感器是微电子技术、计算机技术和自动测试技术的结晶,它也是集成温度传感器领域中最具活力和发展前途的一种新产品。目前,国际上许多著名的集成电路生产厂已经开发出上百种智能温度传感器产品。1.2课题研究必要性随着电子技术和微型计算机的迅速发展,微机测量和控制技术得到了迅速的发展和广泛的应用。单片机具有处理能强、运行速
12、度快、功耗低等优点,应用在温度测量与控制方面,控制简单方便,测量范围广,精度较高。温度是工业生产中常见并且十分重要的参数之一,特别是在冶金、石油、食品、印染等工厂中。由于不同的工艺所需的温度变化曲线各不相同,而现有的温度控制仪大多只能进行恒温控制。因此许多生产过程中加热、保温、降温以及自然降温等操作都是由人工操作的,这就不可避免地产生各种误差,进而影响产品质量,个别采用的温度自动控制系统由于造价较高、操作复杂等原因又限制了在中小企业的应用,因此研究和开发一种实用的温度控制系统成为当务之急。在工业生产过程中需要实时测量控制温度,尤其是在高危生产行业,如花炮生产,煤矿行业等。但依靠人工检测控制既浪
13、费时间,物力,人力,又有一定的危险性,且数据也不准确,因此研究自动的温度测量控制方法和装置具有重要的意义。1.3现代控制系统相对传统控制系统的优势传统的控制系统主要由测量电路和控制电路组成,所具备的功能较少,也比较弱,而且结构很复杂。计算机技术的迅速发展,使得传统的控制系统发生了根本性的变革,即采用微机作为控制系统的核心,代替传统的控制系统的传统的电子线路,从而成为新一代的微机化控制系统。将微机技术引入控制系统中,不仅可以解决传统控制系统不能解决的问题,而且还能简化电路、增加或增强功能、提高控制精度和可靠性,显著增强测控系统的自动化、智能化程度,而且可以缩短系统研制周期、降低成本、易于升级和维
14、护。因此,现代控制系统设计,特别是高精度、高性能的控制系统,目前已很少不采用计算机技术的了。计算机技术的引入,可以为控制系统带来以下一些新特点和新功能:1. 自动调零功能在每次采样前对传感器的输出值自动清零,从而大大降低因控制系统漂移变化造成的误差。2. 数字滤波功能利用已算机软件对测量数据进行处理,可以抑制各种干扰和脉冲信号。3. 数据处理功能利用计算机技术可以实现传统仪器无法实现的各种复杂的处理和运算功能。4. 复杂控制规律利用计算机技术不仅可以实现经典的PID控制,还可以实现各种复杂的控制规律,例如,自适应控制、模糊控制等。 5. 自我诊断功能采用计算机技术后,可对控制系统进行监测,一旦
15、发现故障则立即进行报警,并可显示故障部位或可能的故障原因,对排除故障的方法进行提示。微机化的控制系统是以微机为核心、测量控制一体化的系统,这种系统对被控对象的控制是依据对被控对象的测量结果决定的。 1.4课题设计特点和应用领域课题采用的是单总线数字温度传感器DS18B20,可直接将温度转换值以16位数字码的方式串行输出:将温度转化为数字编码只需1秒左右。而且它具有独特单线接口方式,即与微处理器接口时仅需占用1个I/O口;支持多节点;测温时无需任何外部元件,可以通过数据线直接供电,具有超低功耗工作方式。测温范围为55+125,测温度精度可达到0.0625。由于传送的是串行放大器和A/D转换器可以
16、统统被省却,因而这种测温方式大大提高了各种温度测控系统的可靠性,降低了成本,缩小了体积。其测温系统结构简单,硬件少,成本低,测温精度高,转换速度快,实用性高,应用范围广泛,市场前景好,经济效益可观。系统可以应用于温度要求在55+125.9之间的任何领域。比如:铁路,粮库,水果,蔬菜存储仓库的温度控制,以及多路温度测控仪,各种养殖场的温度控制监测。由于本系统的测温精度可达0.0625,因而对于温度要求特别严格的环境来说,本系统是一个较为理想的监控系统。1.5智能温度控制器的课题主要内容课题的任务是应用单片机及DS18B20单总线器件设计一套温度检测系统,实现对温度的测量及显示,并通过按键人为设定
17、温度上下限!而且在温度超上限价或下限量有控制功能,系统以高性能/价格比的89S52为核心,完成对数据的分析、处理、显示、温度上下限设置、超限自动控制,采用单线数字温度传感器DS18B20来完成对温度的采样和转换。由于课题是完成对温度的实时监测,因而系统的核心部分就是如何实现温度采集。系统采用的是美国DALLAS公司继DS1820之后推出的一种改进型智能温度传感器DS18B20来完成这一任务的。DS18B20与传统的热敏电阻相比,它能够直接读出被测温度并且可根据实际要去通过简单的编程实现9-12位的数字值读数方式,可分别在93.75ms和750ms内完成9位和12位的数字量,并且从DS18B20
18、读出的信息或写入DS18B20的信息仅从一根口线,温度变换功率来源于数据总线,总线本身可以为所接的DS18B20供电,而无需外电源。 DS18B20需在严格的时序控制下才能进行正常操作。对DS18B20的操作包括初始化操作、读/写时间片。总线上的所有操作均从初始化开始,初始化或对RAM、ROM操作。主CPU通过“时间片”来写入或读出DS18B20中的数据。概括说,主CPU经过单线接口访问DS18B20的工作流程为:对DS18B20进行初始化ROM操作命令存储器(包括RAM和EERAM)操作命令数据处理。主CPU对ROM操作完毕,即发出控制操作命令,使DS18B20完成温度测量并将测量结果存入高
19、速暂存器中,然后单片机可读出此温度转换值,并随之进行数据处理、送显示等操作。第2章 智能冰箱控制器系统硬件设计2.1系统的硬件设计方案系统硬件结构如图所示。系统的硬件电路有89C51单片机、温度传感器DS18B20、复位电路、直流电源供电电路、键盘、显示电路、电压检测和报警电路组成的。图2-1 89C51单片机控制电冰箱的原理框图应用89C51单片机控制电冰箱的原理框图如图2-1,MCS-51单片机的典型芯片是89C51,其内部基本组成为:一个8位的中央处理器(CPU),256byte片内RAM单元,4Kbyte掩膜式ROM,2个16位的定时器/计数器,四个8位的并行I/O口(P0,P1,P2
20、,P3),一个全双工串行口,5个中断源,一个片内振荡器和时钟发生电路。其中2路温度输入P1.0和,一路状态电平输入,三路键盘输入;其中故障报警和冷藏室温度公用一个端口。采用温度传感器测得冷冻室温度,通过单线与单片机通信,单片机将此温度值进行保存后,通过控制版面的按键输入某一冷冻温度设定值(电冰箱出厂时候,已经输入了一个比较合适的温度值,或叫做隐含值),这个设定的温度值由单片机送往右边四位数码显示的同时,还不断与实测的冷冻室温度进行比较,如下:T1T设+8?即冷冻室温是否比设定的温度高8度,若是的话,单片机2.0口输出高电平,使得VT1饱和导通,继电器K1吸合,压缩机运转,电冰箱开始制冷过程.若
21、比较结果是否定的,则压缩机保持原来状态不变,这里会有两种情况:一种是压缩机在开机后使冷冻室温度T1降下来,使得T1不再大于T设+8的情况,这也需要保持压缩机继续停机。程序设计必须考虑对于非变频式压缩机(即活塞式、玄片式等开停式温控制器型),为避免压缩机的频繁启动/停止,而规定的大约8范围内,是上升还是下降进入两种不同情形时压缩机应有的状态。压缩机运行后,冷冻室温度不断下降,控温程序将对T1T设继续进行比较,当冷冻室温度T1降至设定温度以下时,单片机P2.0口输出低电平,继电器K1释放,控制压缩机停机,若比较结果是否定的则保持压缩机开机状态不变。只要压缩机一运转,单片机就对压缩机开机进行及时,当
22、压缩机开机时间达到10小时后,主程序使P2.0口变成低电平,压缩机停机,同时P1.2口送出高电平,使得VT2饱和导通,继电器K2吸合,化霜加热器接通电源220V,化霜开始。化霜过程的结束时由蒸发器便面的温度T3来决定的,当结霜融化,蒸发器表面温度T3 。DS18B20的单线输入单片机的P1.0口,温度存入单片机,该温度值与化霜结束温度值13度进行比较,T313?若结果是肯定的,则执行两个动作,一是P2.0口恢复低电平,使化霜继电器K2释放,化霜电热器断电。二是将压缩机开机累计时间清零,为下一个化霜控制周期做好准备。2.2高效微控制器MCS-512.2.1 MCS-51单片机MCS-51系列单片
23、机研制于1980年,由Intel公司所开发,其结构是8048的延伸,改进了8048的缺点,其ROM、RAM都可扩充至64KB,也增添了如乘(MUL)、除(DIV)、减(SUBB)、比较(CJNE)、栈入(PUSH)、栈出(POP)、16位数据指针、布尔代数运算等指令,以及串行通信能力和5个中断源。8052有6个中断源。MCS-51系列单片机特点如下:1. 专为控制应用所设计的八位CPU ;2. 具有布尔代数的运算能力;3. 32条双项且可被独立寻址的IO口;4. 芯片内有128字节可供存储数据的RAM(8052:256字节);5. 内部有两组16位定时器(8052有3个);6. 具有全多工传输
24、信号UART;7. 5个中断源,且具有两级(高低)优先权顺序的中断结构;8. 芯片内有4KB(8KB/8052)的程序存储器(ROM);9. 芯片内有时钟(CLOCK)振荡器电路;10. 程序存储器可扩展至64KB(ROM);11. 数据存储器可扩展至64KB(RAM)。2.2.2 MCS-51系列单片机引脚介绍1.时钟电路引脚 MCS51单片机的时钟可以由内部方式和外部方式产生,XTAL1(19脚)和XTAL2(18脚)即为单片机的两个时钟引脚。图2-2 89C51引脚图(1)内时钟引脚8051单片机片内有振荡电路,只需在XTAL1和XTAL2间外接石英晶体和电容组成的并联振荡电路(晶振器)
25、,晶体可以在固有频率1.212MHz的晶振器之间任选晶体,电容可以在2060pF的电容之间任选,通常选择30pF的瓷片电容。在单片机控制的数字显示温度计电路设计的这个部分,就是采用内时钟引脚,其中晶振器为6MHz,两个电容均为30pF。(2)外时钟方式,XTAL1接地,XTAL2接外部振荡器。由于XTAL2端的电平不是TTL电平,故接一个上拉电阻。外部振荡器的频率应低于12MHz。2. 制信号引脚,包括RST/Vpd、ALE/PROG非、PSEN非、EA非Vpp。下面分别对其进行介绍:(1) RST/Vpd(9脚):复位信号备用电源引脚 当输入的复位信号延续个机器周期以上,高电平即为有效,用以
26、完成单片机的复位操作。复位后影响片内特殊功能寄存器的状态,但不影响片内RAM状态。 同一引脚的pd是备用电源输入端(Vpd接5V备用电源)。在Vcc断电时,为保证RAM中的信息不丢失,可使此引脚完成掉电保护功能。 (2) ALE/PROG非(30脚);地址锁存允许信号编程脉冲输入端 在系统扩展时,ALE用于控制把P0口输出的低8位地址送入锁存器锁存起来,以实现低位地址和数据的分时传送。此外由于ALE是以1/6晶振频率的固定频率输出的正脉冲,因此可作为外边时钟或外部定时脉冲使用。 对片内带有kbyteEPROM的8751编写固化程序时,PROG非作为编程脉冲输入端。 (3)PSEN非(29引脚)
27、:外边程序存储器读选通信号为低电平有效,8051在访问片外程序存储器时,此引脚端输出负脉冲作为读片外程序存储器的选通信号,以实现外部ROM单元的读操作。要检查8051上电平后CPU能否正常到程序存储器中读取指令码,可以用示波器观察引脚PSEN非有无脉冲输出,若有说明正常。 (4) EA非Vpp(31脚):内部和外部程序存储器选择信号 当引脚接高电平时,CPU只访问片内4kbyte的EPROM/ROM,执行内部程序存储器中的指令,但在程序计数器计数超过OFFFH时(即地址大于4kbyte时),将自动转向执行片外大于4kbyte程序存储器内的程序。 若EA非引脚接低电平时,CPU只访问外部程序存储
28、器,而不管片内是否有程序存储器。对于8031单片机(片内无ROM)需外扩EPROM,故必须将EA非引脚接地。 在对EPROM编写固化程序时,需对此引脚施加21V的编程电压。MCS-51有4个8位并行I/O接口P0P3,他们都是双向端口,可以进行输入或者输出操作,每个口都有口锁存器和口驱动器两部分组成。此外,它还有一个全双工串行通信口。这4个端口为MCS-51与外围器件或外围设备进行信息(数据、地址、控制信号)交换提供了多功能的输入/输出通道,也为MCS-51扩展外部功能、构成应用系统提供了必要的条件。它们的特点如下:1. 4个并行I/O接口都是双向的。P0口为漏极开路,P1、P2、P3口均具有
29、内部上拉电阻,它们有时被称为准双向口。2. 4个并行口的32条I/O接口线都可以独立地用于输入或输出操作。3. 当4个并行口的I/O接口线有作输入操作时,必须对该口的锁存器进行写1操作,以保证从I/O接口线输入数据的正确性,这也是4个并行接口有时被称为“准”双向的含义。MCS-51单片机内部属单总线结构,因此使系统在结构上增加了灵活性。通过总线,用户可根据应用需要进行多功能的系统扩展,构成用户的实际应用系统。MCS-51系列中的8031单片机,因其内部在结构上无程序存储器,所以它的应用系统必定为一个扩展的系统。因此,MCS-51的4个并行I/O接口中的P0、P1、P2、P3口基本上都具备有这两
30、项功能:1. P0口:P0口是一个多功能口除可以作为通用的输入/输出口外,还具备用于系统扩展的第二功能。在MCS-51的进行系统扩展时,它作为地址/数据总线口。通过外接地址锁存器,MCS-51的内部单总线可从P0口被扩展成8位的数据总线和16位地址总线的低8位。在实际应用中,P0口先送出外部存储器16位地址中的低8位至地址锁存器锁存,然后再由P0口进行8位数据的输入或输出;2. P1口:P1口作为通用I/O接口,它的每一位都可以别编程为通用I/O接口线;3. P2口:P2口也是一个多功能口,与P0口相似,它除可被用作I/O接口外,在进行系统扩展时,还可以输16位地址总线中的高8位,和P0口共同
31、构成16位的地址总线。当然,在P0口和P2口用作地址/数据总线时,它们都不能再作为通用I/O接口;4. P3口:P3口也是一个多功能口,除可以作为通用I/O接口外,还具有多种控制功能,为通用I/O接口时和MCS-51其他具有控制功能的输入/输出引线在一起,共同形成MCS-51的控制总线。P3口在作为第二功能(控制功能)使用时,它的每一位功能定义如表2.1所示。 表2-1 P3口各引脚定义口线第二功能信号名称P3.0RXD串行数据接收P3.1TXD串行数据发送P3.2INT0外部数据0申请P3.3INT1外部数据1申请P3.4T0定时器/计数器0输入P3.5T1定时器/计数器1输入P3.6WR外
32、部RAM写选通P3.7RD外部RAM读选通一个信号引脚,既是第一功能又是第二功能,在使用时也不会引起混乱和造成错误,理由如下:1. 对于各种型号的芯片,其功能的第一功能信号是相同的,所不同的只在引脚的的第二功能信号上;2. 对于9、30和31各个引脚,由于第一功能信号与第二功能信号是单片机在不同工作方式下的信号,因此不会发生使用上的矛盾;3. P3口线的情况却有所不同,它的第二功能信号都是单片机的重要控制信号。因此在实际使用时,总是先按需要优先选用它的二功能,剩下不用的才作为口线使用。2.2.3 MCS-51单片机的复位方式和复位电路复位操作:复位是单片机的初始化操作,其主要功能是把PC初始化
33、为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或者操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键以重新启动。89C51的RST脚为复位信号输入端,低电平复位,在每次开机时进行复位,然后在+5V的高电平进入工作状态。10uS电容用于使芯片在反复上电的情况下得到可靠复位。根据应用的要求,复位操作通常有两种基本形式:上电自动复位和按键手动复位。上电复位要求接通电源后,自动实现复位操作。通常用的上电复位电路如图2-3所示。图中电容C和电阻R对电源Vcc来说构成微分电路。上电后,保持RST一段高电平时间,由于单片机内的等效电阻的作用,不用图中
34、电阻R也能达到上电复位的操作功能。所谓手动复位,是指通过接通一按钮开关,使单片机进入复位状态。系统上电运行后,若需要复位,一般是通过手动复位来实现的。通常采用手动复位和上电复位结合,其电路如图2-3所示。图2-3单片机复位电路图复位操作还对单片机的个别引脚信号有影响,例如把ALE和PSEN非信号变为无效状态,即ALE=0,PSEN=1;复位信号及其产生 RST引脚是复位信号的输入端,复位信号是高电平有效,其有效时间持续24个振荡脉冲周期(即2个机器周期)以上,若使用频率为6MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作。整个复位电路包括芯片内外两部分。外部电路产生的复位信号(RS
35、T)送施密特触发器,再由片内复位电路在每个机器周期的S5时刻对施密特触发器的输出进行采样。然后才得到内部复位操作所需要的信号。2.3数字温度传感器DS18B20 2.3.1 DS18B20简介DS18B20是美国DALLAS半导体公司生产的可组网数字式温度传感器,在其内部使用了在板(ON-B0ARD)专利技术。全部传感元件及转换电路集成在形如一只三极管的集成电路内。与其它温度传感器相比,DS18B20具有以下特性: 1. 独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 2. 在使用中不需要任何外围元件。 3. 可用数据线供电,电压范
36、围:+3.0 V+5.5 V。 4. 测温范围:-55 125 。固有测温分辨率为0.1。 5. 通过编程可实现912位的数字读数方式。6.用户可自设定非易失性的报警上下限值。 7.支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列如下:图2-4 DS18B20引脚图引脚定义:DQ为数字信号输入/输出端;GND为电源接地;VDD为外接电源输入端(在寄生电源接线方式时接地)。DS18B20主要由4部分组成:64位ROM、温度传感器、非
37、易失性的温度报警触发器TH和TL、高速暂存器。64位ROM用于存储DS18B20序列号,其首字节固定为28H,表示产品类型码,后6个字节是每个器件的编码,最后1个字节是CRC校验码。温度报警触发器TH和TL存储用户通过软件写入的报警上下极限。高速暂存器由9个字节组成,其中有2个字节RAM单元用来存放温度值,前1个字节为温度值的补码低8位,后1个字节为字符号位和温度值的补码高3位。内部结构如图2-4所示。图2-5 DS18B20的内部结构2.3.2 DS18B20的测温原理DS18B20测量温度采用了特有的温度测量技术,其温度测量电路如图2-6所示。冷藏室温度T2.冷冻室温度T1温度蒸发器表面温
38、度T3均由DS18B20温度传感器获得。采用DS18B20较普通传感器有诸多优点,最主要的是它省去了大量的硬件电路,避免了太多的调试问题,而且精度高,响应迅速,实在是上上之举。它通过单数据线DQ与单片机进行数据通讯,简单、可靠、易行。图2-6中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟图2-6温度检测电路脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前
39、,首先将-55 所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2-6中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温
40、原理。2.3.3 DS18B20的操作指令DS18B20是一种可编程的数字温度传感器,它的工作是靠计算机给它发控制命令进行的,DS18B20和计算机在工作过程中的协议主要有:初始化、ROM存储器操作命令、RAM存储器操作命令。分别说明如下: 1. 初始化 单总线上的所有处理均从初始化开始。初始化过程是主机通过向作为从机DS18B20芯片发一个有时间宽度要求的初始化脉冲实现的。初始化完成后,才可进行读写操作。 2. 对ROM的5种操作命令一旦主CPU检测到从属器件的存在,就可以发出ROM操作命令。所有ROM操作命令均为8位(二进制)字长。主CPU可以发出ROM操作命令有以下五种: (1) 读RO
41、M命令(READ ROM,约定代码33H)。该命令允许主CPU读取DS18B20中的8位产品系列编码,48位序列号以及8位的CRC。该命令适用于总线上接一片DS18B20的情况。当总线上挂有多片DS18B20时禁止使用该命令,否则多片DS18B20同时发送数据,必然会导致互相冲突。(2) 符合ROM命令(MATCH ROM,约定代码55H)。主CPU在发出“符合”ROM命令后,接着发出64位的ROM数据序列,从而使主CPU实现对单线总线上特定DS18B20的寻址。只有与ROM序列严格相符的DS18B20,才能对后续的存储器操作命令作出响应。所有与64位ROM序列不相符的DS18B20将等待复位
42、脉冲。该命令对于总线上挂有单个、或多个器件的情况均适用。 (3) 搜索ROM命令(SEARCH ROM,约定代码F0H)。搜索ROM命令允许主CPU使用一种“消除法”(ELMINATION)来识别总线上所有DS18B20的64位ROM编码,即完成整个系统的初始化工作。为以后对各个单线器件作好准备。该部分也是对DS18B20芯片进行软件编程的重点和难点。 (4) 跳过ROM命令(SKIP ROM,约定代码为CCH)。在单线总线系统中,该命令使主CPU不必提供64位ROM编码就能访问各片DS18B20。该命令主要用于向所有的DS18B20同时发出温度转换命令,从而大大节省访问各个器件的时间。但有一
43、点必须注意,主CPU如果在发出SKIP ROM命令之后,又发出了读存储器命令,那么由于多片DS18B20同时向总线上提供数据且在漏极开路状态下产生“线与”的结果,此时读出的数据已经没有实际意义了。(5) 报警搜索命令(ALARAM SEARCH,有约定代码ECH)。该命令的流程与搜索ROM命令的流程相同。仅在最后一次温度测量出现报警的情况下。DS18B20才对该命令做出响应。报警的条件定义为温度超过上限(TTH),或者低于下限(TTL)。上电时,DS18B20预置报警条件为设定状态,直到首次温度测量结果既不超过上限TH,也不低于TL时,报警信号才被解除。 3. 存储器操作命令 存储器操作命令共
44、有6条,具体如下:(1)温度转换命令(CONVERT T)44H。令DS18B20进行温度转换。如果住CPU在该命令之后为读时序,如果DS18B20正忙于进行温度转换,即读得“0”;当温度转换完成时,DS18B20则返回“1”。假如有寄生电源给DS18B20供电,主CPU在发出该命令后立即将单线总线拉成高电平,并且保持500ms时间,以便在温度转换期间给DS18B20提供所需要的电源。(2)读暂存存储器(READ SCRATCHPAD)BEH。该命令为读暂存存储器9个字节的始读,直至读到字节8。主CPU可以在读暂存存储器期间发出一个复位脉冲来终止读操作。(3)写暂存存储器(WRITE SCRA
45、TCHPAD)4EH。主CPU送给DS18B20的2个字节数据就分别写入触发寄存器TH和触发寄存器TL中,顺序是先写TH,到写TL。主CPU也可以在写暂存存储器期间发出一个复位脉冲来终止写操作。 (4)复制暂存存储器COPY SCRATCHPAD48H。该命令把触发寄存器中的TH、TL字节分别复制到EERAM的TH、TL的字节上。若主CPU发出命令后又进行读操作,只要DS18B20正忙于复制,主CPU就读“0”;当复制工作完成后,DS18B20又返回“1”。如果是寄生电源供电,主CPU在发出该命令后就把单线总线拉到高电平,并保持10ms。 (5)重新调出EERAM(RECALL EERAM)B
46、8H。该命令是把存储器在E2RAM温度触发器TH、TL内的数据重新调入暂存器的TH、TL字节。每次DS18B20上电时也自动进行这种操作,因此,只要器件接通电源,暂存存储器的TH、TL中已经有效的数据供使用。若主CPU在发出该命令之后又进行读操作,只要DS18B20正忙于进行调出,主CPU就读得“0”(表示“忙碌”);完成调出操作后DS18B20既返回“1”(表示“操作完毕”)。 (6)读电源(READ POWER SUPPLY)B4H。此项命令发送给DS18B20之后,对主CPU发出的每条读命令,DS18B20都向主CPU提供电源方式信号“0”(表示由寄生电源供电)或者“1”(表示由外部电源
47、供电)。2.3.4 DS18B20接线说明独特的一线接口,只需要一条口线通信多点能力,简化了分布式温度传感,无需外部元件,可用数据总线供电。电压范围为3.0 V至5.5 V 无需备用电源,测量温度范围为-55至+125 ,华氏相当于是-67到257,华氏度-10至+85范围内精度为0.5。温度传感器可编程的分辨率为912位,温度转换为12位数字格式最大值为750毫秒,用户可定义的非易失性温度报警设置。应用范围包括恒温控制,工业系统,消费电子产品温度计或任何热敏感系统。该DS18B20的数字温度计提供912位可编程设备温度读数。信息被发送到DS18B20 通过1线接口,所以中央微处理器与DS18B20只有一条口线连接。为读写以及温度转换可以从数据线本身获得能量,不需要外接电源。 因为每一个DS18B20的包含一个独特的序号,多个DS18B20可以同时存在于一条总线。这使得温度传感器放置在许多不同的地方。它的用途很多,包括空调环境控制,感测建筑物内温设备或机器,并进行过程监测和控制。2.4部分硬件电路2.4.1显示电路 LED显示器是单片机应用系统中常用的廉价输出设备。它是由若干个发光二极管组成的,当发光二极管导通时,相应一个笔画划发光,控制某段发光二极管导通,就能显示出某个数