基于单片机的环境温度检测系统的设计_第1页
基于单片机的环境温度检测系统的设计_第2页
基于单片机的环境温度检测系统的设计_第3页
基于单片机的环境温度检测系统的设计_第4页
基于单片机的环境温度检测系统的设计_第5页
已阅读5页,还剩92页未读, 继续免费阅读

下载本文档

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

文档简介

基于单片机的环境温度检测系统的设计资料内容仅供参考,如有不当或者侵权,请联系本人改正或者删除。基于单片机的环境温度检测系统的设计摘要随着国民经济的发展,人们需要对各中加热炉、热处理炉、反应炉和锅炉中温度进行监测和控制。采用单片机来对她们控制不但具有控制方便,简单和灵活性大等优点,而且能够大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。在日常生活及工业生产过程中,经常要用到温度的检测及控制,温度是生产过程和科学实验中普遍而且重要的物理参数之一。在生产过程中,为了高效地进行生产,必须对它的主要参数,如温度、压力、流量等进行有效的控制。温度控制在生产过程中占有相当大的比例。温度测量是温度控制的基础,技术已经比较成熟。传统的测温元件有热电偶和二电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,需要比较多的外部硬件支持。我们用一种相对比较简单的方式来测量。

我们采用美国DALLAS半导体公司继DS18B20之后推出的一种改进型智能温度传感器DS18B20作为检测元件,温度范围为-55~125ºC,最高分辨率可达0.0625ºC。DS18B20能够直接读出北侧温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。本文介绍一种基于AT89C51单片机的一种温度测量及报警电路,该电路采用DS18B20作为温度监测元件,测量范围0℃-~+100℃,使用LED模块显示,能设置温度报警上下限。正文着重给出了软硬件系统的各部分电路,介绍了集成温度传感器DS18B20的原理,AT89C51单片机功能和应用。该电路设计新颖、功能强大、结构简单。关键词:温度测量;DS18B20;AT89C51DesignofDigitalThermomerBasedonSCMAbstractAlongwithnationaleconomydevelopment,thepeopleneedtoeachheatingfurnace、theheat-treatmentfurnace、inthereactorandtheboilerthetemperaturecarryonthemonitorandthecontrol.Notonlyusesthemonolithicintegratedcircuittocometothemtocontrolhasthecontroltobeconvenient,simpleandflexibilitybigandsoonmerits,moreovermayenhancelargescaleisaccusedthetemperaturetechnicalspecification,thuscanbigenhancetheproductthequalityandquantity.Indailylifeandindustrialproductionprocess,oftenusedinthedetectionandcontroloftemperature,temperatureistheproductionprocessandscientificexperimentsingeneralandoneoftheimportantphysicalparameter.Intheproductionprocess,inordertoefficientlycarryouttheproduction,tobeitsmainparameters,suchastemperature,pressure,flowcontrol,etc...Temperaturecontrolintheproductionprocessofalargeproportion.Temperaturemeasurementisthebasisoftemperature-controlled,morematuretechnology.Traditionalthermocoupleandtemperaturecomponentsarethesecondresistor.Thethermocoupleandthermalresistancearegenerallymeasuredvoltage,andthenreplacedbythecorrespondingtemperature,thesemethodsarerelativelycomplex,requiringarelativelylargenumberofexternalhardwaresupport.Weusearelativelysimplewaytomeasure.

WeusetheUnitedStatesfollowingDALLASSemiconductorDS1820improvedaftertheintroductionofasmarttemperaturesensorDS18B20asthedetectionelement,atemperaturerangeof-55~125ºC,uptoamaximumresolutionof0.0625ºC.DS18B20canbedirectlyreadoutthetemperatureonthenorthside,andthree-wiresystemwithsingle-chipconnectedtoadecreaseoftheexternalhardwarecircuit,withlow-costandeasyuse.Theintroductionofacost-basedAT89C51MCUatemperaturmeasurementcircuits,thecircuitsusedDS18B20high-precisiontemperatursensor,measuringscope0℃-~+100℃,cansetthewarninglimitation,theuseofsevensegmentsLEDthatcanbedisplaythecurrenttemperature.Thepaperfocusesonprovidingasoftwareandhardwaresystemcomponentscircuit,introducedthetheoryofDS18B20,thefounctionsandapplicationsofAT89C51.Thiscircuitdesigninnovative,powerful,canbeexpansionarystrong.Keywords:Temperaturmeasurement;DS18B20;AT89C51目录摘要 IAbstractIIHYPERLINK第1章绪论 5HYPERLINK1.1课题背景及研究意义 5HYPERLINK1.2国内外现状 5HYPERLINK1.3课题的设计目的 6HYPERLINK1.4课题的主要工作 6HYPERLINK1.5本文研究内容 6HYPERLINK第2章开发工具Proteus与Keil 8HYPERLINK2.1Proteus软件 8HYPERLINK2.1.1Proteus简介 8HYPERLINK2.1.24大功能模块 8HYPERLINK2.1.3ISIS智能原理图输入系统 10HYPERLINK2.1.4Proteus简单应用 10HYPERLINK2.2Keil软件 11HYPERLINK2.2.1Keil软件简介 11HYPERLINK2.2.2Keil软件调试功能 11HYPERLINK2.3本章小结 12HYPERLINK第3章系统概述 13HYPERLINK3.1方案选择 13HYPERLINK3.1.1方案一 13HYPERLINK3.1.2方案二 14HYPERLINK3.2系统设计原理 14HYPERLINK3.3系统组成 14HYPERLINK3.4DS18B20温度传感器与单片机的接口电路 15HYPERLINK3.5本章小结 16HYPERLINK第4章系统硬件设计 17HYPERLINK4.180C51单片机的介绍 17HYPERLINK4.1.180C51单片机主要特性 18HYPERLINK4.1.280C51单片机管脚图 19HYPERLINK4.1.380C51单片机的中断系统 21HYPERLINK4.1.480C51单片机的定时/计数器 21HYPERLINK4.2LCD液晶显示器简介 21HYPERLINK4.2.1液晶模块简介 22HYPERLINK4.2.2液晶显示部分与89C51的接口 23HYPERLINK4.3通讯模块 24HYPERLINK4.4DS18B20介绍 25HYPERLINK4.4.1温度传感器工作原理 25HYPERLINK4.4.2DS18B20相关介绍 27HYPERLINK4.4.3DS18B20使用中的注意事项 28HYPERLINK4.5本章小结 28HYPERLINK第5章系统软件设计 30HYPERLINK5.1主程序设计 30HYPERLINK5.2DS18B20初始化 31HYPERLINK5.3数据测试 32HYPERLINK5.4仿真结果 32HYPERLINK5.5本章小结 34HYPERLINK结论 35HYPERLINK致谢 36HYPERLINK参考文献 37HYPERLINK附录A 38HYPERLINK附录B 45HYPERLINK附录C 50HYPERLINK附录D 51第1章绪论1.1课题背景及研究意义随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、石油等各个行业。传统的温度采集方法不但费时费力,而且精度差,单片机的出现使得温度的采集和数据处理问题能够得到很好的解决。温度是工业对象中的一个重要的被控参数。然而所采用的测温元件和测量方法也不相同;产品的工艺不同,控制温度的精度也不相同。因此对数据采集的精度和采用的控制方法也不相同。传统的控制方式以不能满足高精度,高速度的控制要求,如温度控制表温度接触器,其主要缺点是温度波动范围大,由于她主要经过控制接触器的通断时间比例来达到改变加热功率的目的,受仪表本身误差和交流接触器的寿命限制,通断频率很低。近几年来快速发展了多种先进的温度控制方式,如:PID控制,模糊控制,神经网络及遗传算法控制等。这些控制技术大大的提高了控制精度,不但使控制变得简便,而且使产品的质量更好,降低了产品的成本,提高了生产效率。本系统所使用的加热器件是电炉丝,功率为三千瓦,要求温度在400~1000℃。静态控制精度为2.43℃。本设计使用单片机作为核心进行控制。单片机具有集成度高,通用性好,功能强,特别是体积小,重量轻,耗能低,可靠性高,抗干扰能力强和使用方便等独特优点,在数字、智能化方面有广泛的用途。1.2国内外现状温度控制系统在国内各行各业的应用虽然已经十分广泛,但从国内生产的温度控制器来讲,总体发展水平依然不高,同日本、美国、德国等先进国家相比,依然有着较大的差距。成熟的温控产品主要以”点位”控制及常规的PID控制器为主,它们只能适应一般温度系统控制,而用于较高控制场合的智能化、自适应控制仪表,国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。随着中国经济的发展及加入WTO,中国政府及企业对此都非常重视,对相关企业资源进行了重组,相继建立了一些国家、企业的研发中心,开展创新性研究,使中国仪表工业得到了迅速的发展。单片机是指一个集成在一块芯片上的完整计算机系统。尽管她的大部分功能集成在一块小芯片上,可是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,当前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至能够将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器(Microcontroller),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是经过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTELi960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,而且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。当前,高端的32位单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至能够直接使用专用的Windows和Linux操作系统。1.3课题的设计目的1.巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力。2.培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力。3.经过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。1.4课题的主要工作本课题的研究重点是设计一种基于单片机的数字温度计控制系统。利用数字温度传感器DS18B20,此传感器课读取被测量温度值,进行转换。主要工作如下:1.温度测试基本范围0℃—100℃。2.精度误差小于1℃。3.LED液晶显示。4.能够设定温度的上下限报警功能。5.实现报警提示。1.5本文研究内容数字温度计采用温度敏感元件也就是温度传感器(如铂电阻,热电偶,半导体,热敏电阻等),将温度的变化转换成电信号的变化,如电压和电流的变化,温度变化和电信号的变化有一定的关系,如线性关系,一定的曲线关系等,这个电信号能够使用模数转换的电路即A/D转换电路将模拟信号转换为数字信号,数字信号再送给处理单元,如单片机或者PC机等,处理单元经过内部的软件计算将这个数字信号和温度联系起来,成为能够显示出来的温度数值,如25.0摄氏度,然后经过显示单元,如LED,LCD或者电脑屏幕等显示出来给人观察。这样就完成了数字温度计的基本测温功能。本文是基于AT89S51单片机,采用数字温度传感器DS18B20,利用DS18B20不需要A/D转换,课直接进行温度采集显示,报警的数字温度计设计。包括传感器数据采集电路,温度显示电路,上下限报警调整电路,单片机主板电路等组成。第2章开发工具Proteus与Keil2.1Proteus软件2.1.1Proteus简介Proteus软件是英国Labcenterelectronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不但具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是当前最好的仿真单片机及外围器件的工具。虽然当前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是当前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,即将增加Cortex和DSP系列处理器,并持续增加其它系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。该软件的特点是:1.实现了单片机仿真和SPICE电路仿真相结合,具有模拟电路仿真、数字电路仿真、各种单片机(51系列、AVR、PIG等常见的MCU)及其外围电路(如LCD、RAM、ROM、键盘、LED、A/D、D/A……)组成的系统仿真。2.提供了多种虚拟仪器。如示波器、逻辑分析仪、信号发生器等,调试非常方便。3.提供软件调试功能,同时支持第三方的软件编译和调试环境,如Keil等软件。4.具有强大的原理图绘制功能。Proteus与其它单片机仿真软件不同的是,它不但能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验.从某种意义上讲,是弥补了.实验和工程应用阉脱节的矛盾和现象。同时,当硬件调试成功后,利用ProteusARES软件,很容易获得其PCB图,为今后的制造提供了方便。2.1.24大功能模块1.智能原理图设计(ISIS)丰富的器件库:超过27000种元器件,可方便地创立新元件。智能的器件搜索:经过模糊搜索能够快速定位所需要的器件。智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间。支持总线结构:使用总线器件和总线布线使电路设计简明清晰。可输出高质量图纸:经过个性化设置,能够生成印刷质量的BMP图纸,能够方便地供WORD、POWERPOINT等多种文档使用。2.完善的电路仿真功能(Prospice)ProSPICE混合仿真:基于工业标准SPICE3F5,实现数字/模拟电路的混合仿真。超过27000个仿真器件:能够经过内部原型或使用厂家的SPICE文件自行设计仿真器件,Labcenter也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件。多样的激励源:包括直流、正弦、脉冲、分段线性脉冲、音频(使用wav文件)、指数信号、单频FM、数字时钟和码流,还支持文件形式的信号输入。丰富的虚拟仪器:13种虚拟仪器,面板操作逼真,如示波器、逻辑分析仪、信号发生器、直流电压/电流表、交流电压/电流表、数字图案发生器、频率计/计数器、逻辑探头、虚拟终端、SPI调试器、I2C调试器等。生动的仿真显示:用色点显示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用能够使仿真更加直观、生动高级图形仿真功能(ASF):基于图标的分析能够精确分析电路的多项指标,包括工作点、瞬态特性、频率特性、传输特性、噪声、失真、傅立叶频谱分析等。3.独特的单片机协同仿真功能(VSM)支持主流的CPU类型:如ARM7、8051/52、AVR、PIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU类型随着版本升级还在继续增加,如即将支持CORTEX、DSP处理器。支持通用外设模型:如字符LCD模块、图形LCD模块、LED点阵、LED七段显示模块、键盘/按键、直流/步进/伺服电机、RS232虚拟终端、电子温度计等等,其COMPIM(COM口物理接口模型)还能够使仿真电路经过PC机串口和外部电路实现双向异步串行通信。实时仿真:支持UART/USART/EUSARTs仿真、中断仿真、SPI/I2C仿真、MSSP仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿真。编译及调试:支持单片机汇编语言的编辑/编译/源码级仿真,内带8051、AVR、PIC的汇编编译器,也能够与第三方集成编译环境(如IAR、Keil和Hitech)结合,进行高级语言的源码级仿真和调试。4.实用的PCB设计平台原理图到PCB的快速通道:原理图设计完成后,一键便可进入ARES的PCB设计环境,实现从概念到产品的完整设计。先进的自动布局/布线功能:支持器件的自动/人工布局;支持无网格自动布线或人工布线;支持引脚交换/门交换功能使PCB设计更为合理。完整的PCB设计功能:最多可设计16个铜箔层,2个丝印层,4个机械层(含板边),灵活的布线策略供用户设置,自动设计规则检查,3D可视化预览。多种输出格式的支持:能够输出多种格式文件,包括Gerber文件的导入或导出,便利与其它PCB设计工具的互转(如protel)和PCB板的设计和加工。2.1.3ISIS智能原理图输入系统ISIS是PROTEUS系统的中心,它远不但是一个图表库。它是具有控制原理图画图的外观的超强的设计环境。无论用户的要求是快速实现复杂设计的仿真以及PCB设计,还是设计精美的原理图以供出版,ISIS都能够很好的完成。ISIS提供给用户图形外观包括线宽、填充类型、字符等的全部控制,使用户能够生成如杂志上看到一样精美的原理图,远胜过CAD软件绘制出的稀薄的线条。画完图能够以图形文件输出,或者拷贝到剪切板以便其它文件使用。这就使得ISIS成为制作技术文件,学术论文,项目报告的理想工具,也是PCB设计的一个出众的前端。画图的外形由风格模板定义。另外,此方案允许用户定制元件库提供的库部件的外观。2.1.4Proteus简单应用图2-1proteus界面图1.绘制原理图:绘制原理图要在原理图编辑窗口中的蓝色方框内完成。原理图编辑窗口的操作是不同于常见的WINDOWS应用程序的,正确的操作是:用左键放置元件;右键选择元件;双击右键删除元件;右键拖选多个元件;先右键后左键编辑元件属性;先右键后左键拖动元件;连线用左键,删除用右键;改连接线:先右击连线,再左键拖动;中键放缩原理图。2.定制自己的元件:有三个个实现途径,一是用PROTEUSVSMSDK开发仿真模型,并制作元件;另一个是在已有的元件基础上进行改造,比如把元件改为bus接口的;还有一个是利用已制作好(别人的)的元件,我们能够到网上下载一些新元件并把它们添加到自己的元件库里面。3.Sub-Circuits应用:用一个子电路能够把部分电路封装起来,这样能够节省原理图窗口的空间。2.2Keil软件2.2.1Keil软件简介KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。KeilC51软件是一个基于32位Windows环境的应用程序,支持C语言和汇编语言编程,其6.0以上的版本将编译和仿真软件统一为μVision(一般称为μV2)。Keil提供包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,由以下几部分组成:μVisionIDE集成开发环境C51编译器、A51汇编器、LIB51库管理器、BL51连接/定位器、OH51目标文件生成器以及Monitor-51、RTX51实时操作系统。2.2.2Keil软件调试功能应用Keil进行软件仿真开发的主要步骤为:编写源程序并保存—建立工程并添加源文件—设置工程—编译/汇编、连接,产生目标文件—程序调试。Keil使用”工程”(Project)的概念,对工程(而不能对单一的源程序)进行编译/汇编、连接等操作。工程的建立、设置、编译/汇编及连接产生目标文件的方法非常易于掌握。首先选择菜单File-New…,在源程序编辑器中输入汇编语言或C语言源程序(或选择File-Open…,直接打开已用其它编辑器编辑好的源程序文档)并保存,注意保存时必须在文件名后加上扩展名.asm(.a51)或.c;然后选择菜单Project-NewProject…,建立新工程并保存(保存时无需加扩展名,也可加上扩展名.uv2);工程保存后会立即弹出一个设备选择对话框,选择CPU后点确定返回主界面。这时工程管理窗口的文件页(Files)会出现”Target1”,将其前面+号展开,接着选择SourceGroup1,右击鼠标弹出快捷菜单,选择”AddFiletoGroup‘SourceGroup1’”,出现一个对话框,要求寻找并加入源文件(在加入一个源文件后,该对话框不会消失,而是等待继续加入其它文件)。加入文件后点close返回主界面,展开”SourceGroup1”前面+号,就会看到所加入的文件,双击文件名,即可打开该源程序文件。紧接着对工程进行设置,选择工程管理窗口的Target1,再选择Project-OptionforTarget‘Target1’(或点右键弹出快捷菜单再选择该选项),打开工程属性设置对话框,共有8个选项卡,主要设置工作包括在Target选项卡中设置晶振频率、在Debug选项卡中设置实验仿真板等,如要写片,还必须在Output选项卡中选中”CreatHexFi”;其它选项卡内容一般可取默认值。工程设置后按F7键(或点击编译工具栏上相应图标)进行编译/汇编、连接以及产生目标文件。

成功编译/汇编、连接后,选择菜单Debug-Start/StopDebugSession(或按Ctrl+F5键)进入程序调试状态,Keil提供对程序的模拟调试功能,内建一个功能强大的仿真CPU以模拟执行程序。Keil能以单步执行(按F11或选择Debug-Step)、过程单步执行(按F10或选择Debug-StepOver)、全速执行等多种运行方式进行程序调试。如果发现程序有错,可采用在线汇编功能对程序进行在线修改(Debug-InlineAssambly…),不必执行先退出调试环境、修改源程序、对工程重新进行编译/汇编和连接、然后再次进入调试状态的步骤。对于一些必须满足一定条件(如按键被按下等)才能被执行的、难以用单步执行方式进行调试的程序行,可采用断点设置的方法处理(Debug-Insert/RemoveBreakpoint或Debug-Breakpoints…等)。在模拟调试程序后,还须经过编程器将.hex目标文件烧写入单片机中才能观察目标样机真实的运行状况。2.3本章小结本章主要简单介绍了研究本课题需要用到的仿真软件Proteus和编译软件Keil,了解了这两种软件发展,功能和初步用法,了解了proteus的四大功能模块,以及keil的调试功能等,为以后设计打好基础。相信经过后面的学习会有更深体会。系统概述3.1方案选择该系统主要由温度测量和数据采集两部分电路组成,实现的方法有很多种,下面将列出两种在日常生活中和工农业生产中经常见到的实现方案。3.1.1方案一采用热电偶温差电路测温,温度检测部分能够使用低温热偶,热电偶由两个焊接在一起的异金属导线所组成,热电偶产生的热电势由两种金属的接触电势和单一导体的温差电势组成。经过将参考结点保持在已知温度并测量该电压,便可推断出检测结点的温度。数据采集部分则使用带有A/D通道的单片机,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就能够用单片机进行数据的处理,在显示电路上,就能够将被测温度显示出来。热电偶的优点是工作温度范围非常宽,且体积小,可是它们也存在着输出电压小、容易遭受来自导线环路的噪声影响以及漂移较高的缺点,而且这种设计需要用到A/D转换电路,感温电路比较麻烦。系统主要包括对A/D0809的数据采集,自动手动工作方式检测,温度的显示等,这几项功能的信号经过输入输出电路经单片机处理。另外还有复位电路,晶振电路,启动电路等。故现场输入硬件有手动复位键、A/D转换芯片,处理芯片为51芯片,执行机构有4位数码管、报警器等。【1】系统框图如图3-1所示。图3-1热电偶温差电路测温系统框图3.1.2方案二采用数字温度芯片DS18B20测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0—100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器AT89S51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的结构就比较简单,体积也不大。采用51单片机控制,软件编程的自由度大,可经过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。既能够单独对多DS18B20控制工作,还能够与PC机通信上传数据,另外AT89S51在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。【1】该系统利用AT89S51芯片控制温度传感器DS18B20进行实时温度检测并显示,能够实现快速测量环境温度,并能够根据需要设定上下限报警温度。该系统扩展性非常强,它能够在设计中加入时钟芯片DS1302以获取时间数据,在数据处理同时显示时间,并能够利用AT24C16芯片作为存储器件,以此来对某些时间点的温度数据进行存储,利用键盘来进行调时和温度查询,获得的数据能够经过MAX232芯片与计算机的RS232接口进行串口通信,方便的采集和整理时间温度数据。从以上两种方案,容易看出方案一的测温装置可测温度范围宽、体积小,可是线性误差较大。方案二的测温装置电路简单、精确度较高、实现方便、软件设计也比较简单,故本次设计采用了方案二。3.2系统设计原理利用温度传感器DS18B20能够直接读取被测温度值,进行转换的特性,模拟温度值经过DS18B20处理后转换为数字值,然后送到单片机中进行数据处理,并与设置的温度报警限比较,超过限度后经过扬声器报警。同时处理后的数据送到LED中显示。3.3系统组成本课题以是80C51单片机为核心设计的一种数字温度控制系统,系统整体硬件电路包括,传感器数据采集电路,温度显示电路,上下限报警调整电路,单片机主板电路等组成。系统框图主要由主控制器、单片机复位、报警按键设置、时钟振荡、LED显示、温度传感器组成。系统框图如图3-2所示。图3-2系统基本方框图主控制器单片机AT89C51具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。显示电路显示电路采用LED液晶显示数码管,从P3口RXD,TXD串口输出段码。显示电路是使用的串口显示,这种显示最大的优点就是使用口资源比较少,只用p3口的RXD,和TXD,串口的发送和接收,四只数码管采用74LS164右移寄存器驱动,显示比较清晰。温度传感器温度传感器采用美国DALLAS半导体公司生产的DS18B20温度传感器。DS18B20输出信号全数字化。便于单片机处理及控制,在0—100摄氏度时,最大线形偏差小于1摄氏度,采用单总线的数据传输,可直接与计算机连接。用AT89S51芯片控制温度传感器DS18B20进行实时温度检测并显示,能够实现快速测量环境温度,并能够根据需要设定上下限报警温度。获得的数据能够经过MAX232芯片与计算机的RS232接口进行串口通信,方便的采集和整理时间温度数据。3.4DS18B20温度传感器与单片机的接口电路DS18B20能够采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图3-3所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。【2】当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。采用寄生电源供电方式时VDD端接地。由于单线制只有一根线,因此发送接口必须是三态的。图3-3DS18B20与单片机的接口电路3.5本章小结本章简述了数字温度控制系统的设计思路,设计方案选择,以及系统的组成、设计原理,详细介绍了主板电路和显示电路的结构,并简单介绍了数字温度传感器DS18B20的特点。并经过框图形式更直观、更形象地描述了系统的整体组成。系统硬件设计4.180C51单片机的介绍80C51单片机最初是由Intel公司开发设计的,但后来Intel公司把51核的设计方案卖给了几家大的电子设计生产商,譬如SST、Philip、Atmel等大公司。如是市面上出现了各式各样的但均以51为内核的单片机,倒是Intel公司自己的单片机却显得逊色了。这些各大电子生产商推出的单片机都兼容51指令、并在51的基础上扩展一些功能而内部结构是与51一致的。80C51有40个引脚,4个8位并行I/O口,1个全双工异步串行口,同时内含5个中断源,2个优先级,2个16位定时/计数器。80C51的存储器系统由4K的程序存储器(掩膜ROM),和128B的数据存储器(RAM)组成。【3】80C51单片机的基本组成框图见图4-1。【3】图4-180C51单片机结由图4-1可见,8051单片机主要由以下几部分组成:cpu系统8位cpu,含布尔处理器;时钟电路;总线控制逻辑。存储器系统4K字节的程序存储器(ROM/EPROM/Flash,可外扩至64KB);128字节的数据存储器(RAM,可再外扩64KB);特殊功能寄存器SFR。I/O口和其它功能单元4个并行I/O口;2个16位定时计数器;1个全双工异步串行口;中断系统(5个中断源,2个优先级)。4.1.180C51单片机主要特性1.一个8位的微处理器(CPU)。2.片内数据存储器RAM(128B),用以存放能够读/写的数据,如运算的中间结果、最终结果以及欲显示的数据等,SST89系列单片机最多提供1K的RAM。3.片内程序存储器ROM(4KB),用以存放程序、一些原始数据和表格。但也有一些单片机内部不带ROM/EPROM,如8031,8032,80C31等。当前单片机的发展趋势是将RAM和ROM都集成在单片机里面,这样既方便了用户进行设计又提高了系统的抗干扰性。SST公司推出的89系列单片机分别集成了16K、32K、64KFlash存储器,可供用户根据需要选用。4.四个8位并行I/O接口P0~P3,每个口既能够用作输入,也能够用作输出。5.两个定时器/计数器,每个定时器/计数器都能够设置成计数方式,用以对外部事件进行计数,也能够设置成定时方式,并能够根据计数或定时的结果实现计算机控制。为方便设计串行通信,当前的52系列单片机都会提供3个16位定时器/计数器。6.五个中断源的中断控制系统。现在新推出的单片机都不只5个中断源,例如SST89E58RD就有9个中断源。7.一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单机与微机之间的串行通信。8.片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率为12MHz。SST89V58RD最高允许振荡频率达40MHz,因而大大的提高了指令的执行速度。【3】4.1.280C51单片机管脚图图4-280C51单片机管脚图部分引脚说明:时钟电路引脚XTAL1和XTAL2:XTAL2(18脚):接外部晶体和微调电容的一端;在8051片内它是振荡电路反相放大器的输出端,振荡电路的频率就是晶体固有频率。若需采用外部时钟电路时,该引脚输入外部时钟脉冲。要检查8051/8031的振荡电路是否正常工作,可用示波器查看XTAL2端是否有脉冲信号输出。XTAL1(19脚):接外部晶体和微调电容的另一端;在片内它是振荡电路反相放大器的输入端。在采用外部时钟时,该引脚必须接地。控制信号引脚RST,ALE,PSEN和EA:RST/VPD(9脚):RST是复位信号输入端,高电平有效。当此输入端保持备用电源的输入端。当主电源Vcc发生故障,降低到低电平规定值时,将+5V电源自动两个机器周期(24个时钟振荡周期)的高电平时,就能够完成复位操作。RST引脚的第二功能是VPD,即接入RST端,为RAM提供备用电源,以保证存储在RAM中的信息不丢失,从而合复位后能继续正常运行。ALE/PROG(30脚):地址锁存允许信号端。当8051上电正常工作后,ALE引脚不断向外输出正脉冲信号,此频率为振荡器频率fOSC的1/6。CPU访问片外存储器时,ALE输出信号作为锁存低8位地址的控制信号。平时不访问片外存储器时,ALE端也以振荡频率的1/6固定输出正脉冲,因而ALE信号能够用作对外输出时钟或定时信号。如果想确定8051/8031芯片的好坏,可用示波器查看ALE端是否有脉冲信号输出。如有脉冲信号输出,则8051/8031基本上是好的。ALE端的负载驱动能力为8个LS型TTL(低功耗甚高速TTL)负载。此引脚的第二功能PROG在对片内带有4KBEPROM的8751编程写入(固化程序)时,作为编程脉冲输入端。PSEN(29脚):程序存储允许输出信号端。在访问片外程序存储器时,此端定时输出负脉冲作为读片外存储器的选通信号。此引肢接EPROM的OE端(见后面几章任何一个小系统硬件图)。PSEN端有效,即允许读出EPROM/ROM中的指令码。PSEN端同样可驱动8个LS型TTL负载。要检查一个8051/8031小系统上电后CPU能否正常到EPROM/ROM中读取指令码,也可用示波器看PSEN端有无脉冲输出。如有则说明基本上工作正常。EA/Vpp(31脚):外部程序存储器地址允许输入端/固化编程电压输入端。当EA引脚接高电平时,CPU只访问片内EPROM/ROM并执行内部程序存储器中的指令,但当PC(程序计数器)的值超过0FFFH(对8751/8051为4K)时,将自动转去执行片外程序存储器内的程序。当输入信号EA引脚接低电平(接地)时,CPU只访问外部EPROM/ROM并执行外部程序存储器中的指令,而不论是否有片内程序存储器。对于无片内ROM的8031或8032,需外扩EPROM,此时必须将EA引脚接地。此引脚的第二功能是Vpp是对8751片内EPROM固化编程时,作为施加较高编程电压(一般12V~21V)的输入端。输入/输出端口P0/P1/P2/P3:P0口(P0.0~P0.7,39~32脚):P0口是一个漏极开路的8位准双向I/O口。作为漏极开路的输出端口,每位能驱动8个LS型TTL负载。当P0口作为输入口使用时,应先向口锁存器(地址80H)写入全1,此时P0口的全部引脚浮空,可作为高阻抗输入。作输入口使用时要先写1,这就是准双向口的含义。在CPU访问片外存储器时,P0口分时提供低8位地址和8位数据的复用总线。在此期间,P0口内部上拉电阻有效。P1口(P1.0~P1.7,1~8脚):P1口是一个带内部上拉电阻的8位准双向I/O口。P1口每位能驱动4个LS型TTL负载。在P1口作为输入口使用时,应先向P1口锁存地址(90H)写入全1,此时P1口引脚由内部上拉电阻拉成高电平。P2口(P2.0~P2.7,21~28脚):P2口是一个带内部上拉电阻的8位准双向I/O口。P口每位能驱动4个LS型TTL负载。在访问片外EPROM/RAM时,它输出高8位地址。P3口(P3.0~P3.7,10~17脚):P3口是一个带内部上拉电阻的8位准双向I/O口。P3口每位能驱动4个LS型TTL负载。P3口与其它I/O端口有很大的区别,它的每个引脚都有第二功能,如下:P3.0:(RXD)串行数据接收。P3.1:(RXD)串行数据发送。P3.2:(INT0#)外部中断0输入。P3.3:(INT1#)外部中断1输入。P3.4:(T0)定时/计数器0的外部计数输入。P3.5:(T1)定时/计数器1的外部计数输入。P3.6:(WR#)外部数据存储器写选通。P3.7:(RD#)外部数据存储器读选通。4.1.380C51单片机的中断系统80C51系列单片机的中断系统有5个中断源,2个优先级,能够实现二级中断服务嵌套。由片内特殊功能寄存器中的中断允许寄存器IE控制CPU是否响应中断请求;由中断优先级寄存器IP安排各中断源的优先级;同一优先级内各中断同时提出中断请求时,由内部的查询逻辑确定其响应次序。4.1.480C51单片机的定时/计数器在单片机应用系统中,常常会有定时控制需求,如定时输出、定时检测、定时扫描等;也经常要对外部事件进行计数。80C51单片机内集成有两个可编程的定时/计数器:T0和T1,它们既能够工作于定时模式,也能够工作于外部事件计数模式,另外,T1还能够作为串行口的波特率发生器。4.2LCD液晶显示器简介显示器是人与机器沟通的重要界面,早期以显像管(CRT/CathodeRayTube)显示器为主,但随着科技不断进步,各种显示技术如雨后春笋般诞生,近来由于液晶(LCD)显示器具有轻薄短小、耗电量低、无辐射危险,平面直角显示以及影像稳定不闪烁等优势,在近年来价格不断下跌的吸引下,逐渐取代CRT之主流地位,显示器明日之星架势十足。液晶是一种既具有液体的流动性又具有光学特性的有机化合物,它的透明程度和呈现的颜色受外加电场的影响,利用这特点便可做成字符显示器。液晶显示器(LCD)英文全称为LiquidCrystalDisplay,它一种是采用了液晶控制透光度技术来实现色彩的显示器。和CRT显示器相比,LCD的优点是很明显的。由于经过控制是否透光来控制亮和暗,当色彩不变时,液晶也保持不变,这样就无须考虑刷新率的问题。显示接口用来显示系统的状态,命令或采集的电压数据。本系统显示部分用的是LCD液晶模块,采用一个16×1的字符型液晶显示模块。点阵图形式液晶由M行×N列个显示单元组成,假设LCD显示屏有64行,每行有128列,每8列对应1个字节的8个位,即每行由16字节,共16×8=128个点组成,屏上64×16个显示单元和显示RAM区1024个字节相对应,每一字节的内容和屏上相应位置的亮暗对应。一个字符由6×8或8×8点阵组成,即要找到和屏上某几个位置对应的显示RAM区的8个字节,而且要使每个字节的不同的位为‘1’,其它的为‘0’,为‘1’的点亮,为‘0’的点暗,这样一来就组成某个字符。但对于内带字符发生器的控制器来说,显示字符就比较简单了,可让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。4.2.1液晶模块简介LM016L的结构及功能:LM016L液晶模块采用HD44780控制器,hd44780具有简单而功能较强的指令集,能够实现字符移动,闪烁等功能,LM016L与单片机MCU通讯可采用8位或4位并行传输两种方式,hd44780控制器由两个8位寄存器,指令寄存器(IR)和数据寄存器(DR)忙标志(BF),显示数RAM(DDRAM),字符发生器ROMA(CGOROM)字符发生器RAM(CGRAM),地址计数器RAM(AC)。IR用于寄存指令码,只能写入不能读出,DR用于寄存数据,数据由内部操作自动写入DDRAM和CGRAM,或者暂存从DDRAM和CGRAM读出的数据,BF为1时,液晶模块处于内部模式,不响应外部操作指令和接受数据,DDTAM用来存储显示的字符,能存储80个字符码, CGROM由8位字符码生成5*7点阵字符160中和5*10点阵字符32种.8位字符编码和字符的对应关系,能够查看参考文献(30)中的表4. CGRAM是为用户编写特殊字符留用的,它的容量仅64字节,能够自定义8个5*7点阵字符或者4个5*10点阵字符,AC能够存储DDRAM和CGRAM的地址,如果地址码随指令写入IR,则IR自动把地址码装入AC,同时选择DDRAM或CGRAM但愿,LM016L液晶模块的引脚图如图4-3所示。图4-31601引脚图LM016L引脚介绍:Vss(1脚):一般接地。Vdd(2脚):接电源。Vee(3脚):液晶显示器对比度调整端,接电源时对比度最弱,接地时对比度最高(对比度过高时会产生”鬼影”,使用时能够经过一个10K的电位器调整对比度)。RS(4脚):RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。R/W(5脚):R/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。E(6脚):E(或EN)端为使能(enable)端,下降沿使能。DB0(7脚):底4位三态、双向数据总线0位(最低位)。DB1(8脚):底4位三态、双向数据总线1位。DB2(9脚):底4位三态、双向数据总线2位。DB3(10脚):底4位三态、双向数据总线3位。DB4(11脚):高4位三态、双向数据总线4位。DB5(12脚):高4位三态、双向数据总线5位。DB6(13脚):高4位三态、双向数据总线6位。DB7(14脚):高4位三态、双向数据总线7位(最高位)(也是busyflang)。寄存器选择控制如表4-1。表4-1寄存器选择控制RSR/W操作说明00写入指令寄存器(清除屏等)01读busyflag(DB7),以及读取位址计数器(DB0~DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据4.2.2液晶显示部分与89C51的接口如图4-4所示。用89C51的P2口作为数据线,用P3.2、P3.1、P3.0分别作为LCD的E、R/W、RS。其中E是下降沿触发的片选信号,R/W是读写信号,RS是寄存器选择信号本模块设计要点如下:显示模块初始化:首先清屏,再设置接口数据位为8位,显示行数为1行,字型为5×7点阵,然后设置为整体显示,取消光标和字体闪烁,最后设置为正向增量方式且不移位。向LCD的显示缓冲区中送字符,程序中采用2个字符数组,一个显示字符,另一个显示电压数据,要显示的字符或数据被送到相应的数组中,完成后再统一显示.首先取一个要显示的字符或数据送到LCD的显示缓冲区,程序延时2.5ms,判断是否够显示的个数,不够则地址加一取下一个要显示的字符或数据。图4-4液晶与89C51的接口4.3通讯模块80C51内部已集成通信接口URT,只需扩展一片MAX232芯片将输出信号转换成RS-232协议规定的电平标准,

MAX232是一种双组驱动器/接收器,每个接收器将EIA/TIA-232-E电平输入转换为5V

TTL/CMOS电平。每个驱动器将TTL/CMOS输入电平转换为EIA/TIA-232-E电平。即EIA接口,就是把5V转换为-8V到-15V电位0V转换为8V到15V再经RXD输出,接收时由RXD输入,把-8V到-15V电位转换为5V,8V到15V转换为0V。MAX232的工作电压只需5V,内部有振荡电路产生正负9V电位。MAX232引脚图如图4-5所示。图4-5MAX232引脚功能图4.4DS18B20介绍DS18B20引脚如图4-6所示。图4-6DS18B20引脚图DALLAS最新单线数字温度传感器DS18B20是一种新型的”一线器件”,其体积更小、更适用于多种场合、且适用电压更宽、更经济。DALLAS半导体公司的数字化温度传感器DS18B20是世界上第一片支持”一线总线”接口的温度传感器。温度测量范围为-55~+125摄氏度,可编程为9位~12位转换精度,测温分辨率可达0.0625摄氏度,分辨率设定参数以及用户设定的报警温度存储在EEPROM中,掉电后依然保存。被测温度用符号扩展的16位数字量方式串行输出;其工作电源既能够在远端引入,也能够采用寄生电源方式产生;多个DS18B20能够并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。因此用它来组成一个测温系统,具有线路简单,在一根通信线,能够挂很多这样的数字温度计,十分方便。4.4.1温度传感器工作原理DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。DS18B20测温原理:低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55℃所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。DS18B20功能特点:1.采用单总线技术,与单片机通信只需要一根I/O线,在一根线上能够挂接多个DS18B20。2.每只DS18B20具有一个独有的,不可修改的64位序列号,根据序列号访问地应的器件。3.低压供电,电源范围从3~5V,能够本地供电,也能够直接从数据线上窃取电源(寄生电源方式)。4.测温范围为-55℃~+125℃,在-10℃~85℃范围内误差为±0.5℃。5.可编辑数据为9~12位,转换12位温度时间为750ms(最大)。6.用户可自设定报警上下限温度。7.报警搜索命令可识别和寻址哪个器件的温度超出预定值。8.DS18B20的分辩率由用户经过EEPROM设置为9~12位。9.DS18B20可将检测到温度值直接转化为数字量,并经过串行通信的方式与主控制器进行数据通信。DS18B20有4个主要的数据部件:1.光刻ROM中的64位序列号是出厂前被光刻好的,它能够看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就能够实现一根总线上挂接多个DS18B20的目的。2.DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表示,其中S为符号位。3.DS18B20温度传感器的存储器DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。4.配置寄存器。DS18B20内部结构及功能:DS18B20的内部结构如图4-7所示。主要包括:寄生电源,温度传感器,64位ROM和单总线接口,存放中间数据的高速暂存器RAM,用于存储用户设定温度上下限值的TH和TL触发器,存储与控制逻辑,8位循环冗余校验码(CRC)发生器等7部分图4-7DS18B20内部结构4.4.2DS18B20相关介绍温度的读取:DS18B20在出厂时以配置为12位,读取温度时共读取16位,因此把后11位的2进制转化为10进制后在乘以0.0625便为所测的温度,还需要判断正负。前5个数字为符号位,当前5位为1时,读取的温度为负数;当前5位为0时,读取的温度为正数。DS18B20的初始化:1.先将数据线置高电平”1”。2.延时(该时间要求的不是很严格,可是尽可能的短一点)。3.数据线拉到低电平”0”。4.延时750微秒(该时间的时间范围能够从480到960微秒)。5.数据线拉到高电平”1”。6.延时等待(如果初始化成功则在15到60毫秒时间之内产生一个由DS18B20所返回的低电平”0”。据该状态能够来确定它的存在,可是应注意不能无限的进行等待,不然会使程序进入死循环,因此要进行超时控制7.若CPU读到了数据线上的低电平”0”后,还要做延时,其延时的时间从发出的高电平算起(第(5)步的时间算起)最少要480微秒。8.将数据线再次拉高到高电平”1”后结束。DS18B20的写操作:1.数据线先置低电平”0”。2.延时确定的时间为15微秒。3.按从低位到高位的顺序发送字节(一次只发送一位)。4.延时时间为45微秒。5.将数据线拉到高电平。6.重复上(1)到(6)的操作直到所有的字节全部发送完为止。7.最后将数据线拉高。DS18B20的读操作:1.将数据线拉高”1”。2.延时2微秒。3.将数据线拉低”0”。4.延时15微秒。5.将数据线拉高”1”。6.延时15微秒。7.读数据线的状态得到1个状态位,并进行数据处理。8.延时30微秒。4.4.3DS18B20使用中的注意事项DS18B20虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题:1.DS18B20从测温结束到将温度值转换成数字量需要一定的转换时间,这是必须保证的,不然会出现转换错误的现象,使温度输出总是显示85。2.在实际使用中发现,应使电源电压保持在5V左右,若电源电压过低,会使所测得的温度精度降低。3.较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。4.在DS18B20的有关资料中均未提及单总线上所挂DS18B20数量问题,容易使人误认为能够挂任意多个DS18B20,在实际应用中并非如此,当单总线上所挂DS18B20超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。5.在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序总要等待DS18B20的返回信号,一旦某个DS18B20接触不好或断线,当程序读该DS18B20时,将没有返回信号,程序进入死循环,这一点在进行DS18B20硬件连接和软件设计时也要给予一定的重视。4.5本章小结本章重点分析了数字温度计控制系统的硬件电路设计,介绍了设计中所用到的芯片,包括单片机芯片80C51、液晶显示芯片LM016L、数字温度传感器芯片DS18B20等。介绍了80C51结构、特点、中断、定时/计数等。介绍了设计中所用到的芯片。经过本章的学习加深了51单片机的了解,熟悉了数字温度传感器DS18B20。系统软件设计5.1主程序设计整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,软件的功能也就基本定下来了。从软件的功能不同可分为两大类:一是监控软件(主程序),它是整个控制系统的核心,专门用来协调各执行模块和操作者的关系。二是执行软件(子程序),它是用来完成各种实质性的功能如测量、计算、显示、通讯等。每一个执行软件也就是一个小的功能执行模块。这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义。各执行模块规划好后,就能够规划监控程序了。首先要根据系统的总体功能选择一种最合适的监控程序结构,然后根据实时性的要求,合理地安排监控软件和各执行模块之间地调度关系。主程序流程见图5-1。图5-1主程序流程图5.2DS18B20初始化18B20初始化流程图见图5-2。图5-2DS18B20初始化流程图5.3数据测试将温度传感器与冰水混合物接触,经过充分搅拌达到热平衡后调节系统,使显示读数为0.00(标定0℃);利用气压计读出当时当地的大气压强,并根据大气压强和当地重力加速度计算出当时的实际压强;根据沸点与压强的关系查出沸点温度。把温度传感器放入沸水中,待显示读数稳定后重新调节,使显示器显示读数等于当地当时沸点温度后工作结束。该温度计的量程为0℃~100℃,读数精度为0.1℃,实际使用一般在0℃~100℃。采用0℃~50℃和50℃~100℃的精密水银温度计作检验标准,对设计的温度计进行测试,其结果表明能达到该精度要求。5.4仿真结果设置温度上限为37度,温度下限为10度。1.如图5-3所示。此时温度时43度,超出上限温度,黄灯亮,实现报警。图5-3仿真12.如图5-4所示。此时温度为5度,低于下限温度,绿灯亮,实现报警。图5-4仿真23.如图5-5所示。此时温度为20度,在所设范围内,两灯都没亮,说明温度正常。图5-5仿真35.5本章小结本章对基于单片机的数字温度控制系统的软件程序进行了简要介绍,介绍了主程序设计及DS18B20的初始化,并给出设计流程图,更直观的把软件设计呈现出来作出了设计的仿真,设置上线限温度,并作3种情况分析。验证了设计的正确性。经过本章的介绍了解软件设计流程,熟悉51单片机的编程。结论本文介绍了基于80C51单片机的数字温度计控制系统的设计,对整个硬件电路和软件程序设计做了分析,文中介绍了数字温度计的现状及发展,介绍了仿真软件proteus及keil的基本知识,学习了proteus的仿真方法和步骤,介绍了数字温度计的设计方案选择及原理介绍,加深了51单片机的知识了解,介绍51单片机的结构、特点等。并学习了数字温度传感器DS18B20,设计软件仿真,更直观的反应设计的正确性。本文对其中的一些基本原理也做了简要的概述。其实写完了本篇论文,也仅仅是对数字温度计控制系统做出了一个简单的设计方案,数字温度计科利用在很多领域,在一些人不能直接进入的场所,利用单片机控制的数字温度计,能够设置并控制其中的温度,数字温度计还能够利用在温室中,这样就能够方便的控制温室中的温度,当温度超过所要求的温度时,可发生报警。总之数字温度计利用在很多领域。本课题只是单片机控制数字温度计系统得一种设计方法。致谢经过这一阶段的努力,我的毕业论文《基于单片机的数字温度计》终于完成了,这意味着大学生活即将结束。在大学阶段,我在学习上和思想上都受益非浅,这除了自身的努力外,与各位老师、同学和朋友的关心、支持和鼓励是分不开的。在我写本论文的过程中,马建为老师给我提供了许多资料,并对实践中出现的问题给予耐心的解答,完稿之后在百忙之中仔细阅读,给出修改意见,在此对她表示感谢。参考文献1杨素行著.模拟电子技术基础(第二版).北京:高等教育出版社,.2阎石著.数字电子技术基础(第五版).北京:高等教育出版社,.3李全利,仲伟峰,徐军著.单片机原理及应用.北京:清华大学社,.4何立民著.单片机高级教程.北京:北京航空航天大学出版社,.5杨路明著.C语言程序设计教程(第2版).北京:北京邮电大学出版社,.6马忠梅,籍顺心,张凯等著.单片机的C语言应用程序设计(第4版).北京:北京航天航空大学出版社,.7白驹珩,雷晓平著.单片计算机及其应用.成都:电子科技大学出版社,1997.8谭浩强著.程序设计与开发技术.北京:清华大学出版社,1991.9钟富昭著.8051单片机典型模块设

温馨提示

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

评论

0/150

提交评论