《基于AT89c51家庭温度智能控制系统的设计和仿真毕业论文.docx》由会员分享,可在线阅读,更多相关《基于AT89c51家庭温度智能控制系统的设计和仿真毕业论文.docx(54页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于AT89c51家庭温度智能控制系统的设计和仿真毕业论文目录毕业设计(论文)任务书毕业设计(论文)开题报告指导教师审查意见评阅教师评语答辩会议记录中文摘要外文摘要前言1绪论11.1 课题背景与研究意义11.2 国外现状11.3 课题的设计目的21.4 课题的主要工作31.5 本章小结32智能温度控制系统的概述42.1单片机的基本结构与介绍42.2温度传感器的选择172.3LED显示屏的介绍和工作原理172.4控制电路原理232.5系统方案论证与比较253 智能温度计的设计与仿真253.1基于Proteus软件的仿真253.2 基于AT89C51家庭温度智能控制系统的设计和仿真主程序设计263
2、.3 DS18B20初始化263.4数据测试273.5仿真结果284 结论30参考文献30致 谢371绪论1.1 课题背景与研究意义随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、石油等各个行业。传统的温度采集方法不仅费时费力,而且精度差,单片机的出现使得温度的采集和数据处理问题能够得到很好的解决。温度是工业对象中的一个重要的被控参数。然而所采用的测温元件和测量方法也不相同;产品的工艺不同,控制温度的精度也不相同。因此对数据采集的精度和采用的控制方法也不相同。传统的控制方式以不能满足
3、高精度,高速度的控制要求,如温度控制表温度接触器,其主要缺点是温度波动围大,由于他主要通过控制接触器的通断时间比例来达到改变加热功率的目的,受仪表本身误差和交流接触器的寿命限制,通断频率很低。近几年来快速发展了多种先进的温度控制方式,如:PID控制,模糊控制,神经网络与遗传算法控制等。这些控制技术大大的提高了控制精度,不但使控制变得简便,而且使产品的质量更好,降低了产品的成本,提高了生产效率。本系统所使用的加热器件是电炉丝,功率为三千瓦,要求温度在4001000。静态控制精度为2.43。本设计使用单片机作为核心进行控制。单片机具有集成度高,通用性好,功能强,特别是体积小,重量轻,耗能低,可靠性
4、高,抗干扰能力强和使用方便等独特优点,在数字、智能化方面有广泛的用途。1.2 国外现状温度控制系统在国各行各业的应用虽然已经十分广泛,但从国生产的温度控制器来讲,总体发展水平仍然不高,同日本、美国、德国等先进国家相比,仍然有着较大的差距。成熟的温控产品主要以“点位”控制与常规的PID控制器为主,它们只能适应一般温度系统控制,而用于较高控制场合的智能化、自适应控制仪表,国技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。随着我国经济的发展与加入WTO,我国政府与企业对此都非常重视,对相关企业资源进行了重组,相继建立了一些国家、企业的研发中心,开展创新性研究,使我国仪表工业得到了迅速的发展。单
5、片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:53 / 54绪论CPU、存、部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器(Microcontroller),是因为它最早被用在工业控制领域。单片机由芯片仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
6、INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性
7、能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。1.3课题的设计目的1. 巩固、加深和扩大单片机应用的知识面,提高综合与灵活运用所学知识解决工业控制的能力。2. 培养针对课题需要,选择和查阅有关手册、图表与文献资料的自学能力,提高组成系统、编程、
8、调试的动手能力。3. 通过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、容与步骤。1.4 课题的主要工作本课题的研究重点是设计一种基于单片机的数字温度计控制系统。利用数字温度传感器DS18B20,此传感器课读取被测量温度值,进行转换。主要工作如下:1. 温度测试基本围0100。2. 精度误差小于1。3. LED液晶显示。4. 可以设定温度的上下限报警功能。5. 实现报警提示。1.4.1 本文研究容数字温度计采用温度敏感元件也就是温度传感器(如铂电阻,热电偶,半导体,热敏电阻等),将温度的变化转换成电信号的变化,如电压和电流的变化,温度变化和电信号的变化有
9、一定的关系,如线性关系,一定的曲线关系等,这个电信号可以使用模数转换的电路即A/D转换电路将模拟信号转换为数字信号,数字信号再送给处理单元,如单片机或者PC机等,处理单元经过部的软件计算将这个数字信号和温度联系起来,成为可以显示出来的温度数值,如25.0摄氏度,然后通过显示单元,如LED,LCD或者电脑屏幕等显示出来给人观察。这样就完成了数字温度计的基本测温功能。本文是基于AT89C51单片机,采用数字温度传感器DS18B20,利用DS18B20不需要A/D转换,课直接进行温度采集显示,报警的数字温度计设计。包括传感器数据采集电路,温度显示电路,上下限报警调整电路,单片机主板电路等组成。智能温
10、度控制系统的概述1.5 本章小结温度控制系统在国各行各业的应用虽然已经十分广泛,但从国生产的温度控制器来讲,总体发展水平仍然不高,同日本、美国、德国等先进国家相比,仍然有着较大的差距。成熟的温控产品主要以“点位”控制与常规的PID控制器为主,它们只能适应一般温度系统控制,而用于较高控制场合的智能化、自适应控制仪表,国技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。随着我国经济的发展与加入WTO,我国政府与企业对此都非常重视,对相关企业资源进行了重组,相继建立了一些国家、企业的研发中心,开展创新性研究,使我国仪表工业得到了迅速的发展。基于AT89C51家庭温度智能控制系统的设计与仿真2智能
11、温度控制系统的概述2.1单片机的基本结构与介绍单片机要自动完成计算,它应该具有哪些最重要的部分呢?我们以打算盘为例计算一道算术题。例:3615616634。现在要进行运算,首先需要一把算盘,其次是纸和笔。我们把要计算的问题记录下来,然后第一步先算163156,把它与36相加的结果记在纸上,然后计算16634,再把它从上一次结果中减去,就得到最后的结果。现在,我们用单片机来完成上述过程,显然,它首先要有代替算盘进行运算的部件,这就是“运算器”;其次,要有能起到纸和笔作用的器件,即能记忆原始题目、原始数据和中间结果,还要记住使单片机能自动进行运算而编制的各种命令。这类器件就称为“存贮器”。此外,还
12、需要有能代替人作用的控制器,它能根据事先给定的命令发出各种控制信号,使整个计算过程能一步步地进行。但是光有这三部分还不够,原始的数据与命令要输入,计算的结果要输出,都需要按先后顺序进行,有时还需等待。如上例中,当在计算163156时,数字36就不能同时进入运算器。因此就需要在单片机上设置按控制器的命令进行动作的“门”,当运算器需要时,就让新数据进入。或者,当运算器得到最后结果时,再将此结果输出,而中间结果不能随便“溜出”单片机。这种对输入、输出数据进行一定管理的“门”电路在单片机中称为“口”(Port)。在单片机中,基本上有三类信息在流动,一类是数据,即各种原始数据(如上例中的36、163等)
13、、中间结果(如16634所得的商4、余数30等)、程序(命令的集合)等。这样要由外部设备通过“口”进入单片机,再存放在存贮器中,在运算处理过程中,数据从存贮器读入运算器进行运算,运算的中间结果要存入存贮器中,或最后由运算器经“出入口”输出。用户要单片机执行的各种命令(程序)也以数据的形式由存贮器送入控制器,由控制器解读(译码)后变为各种控制信号,以便执行如加、减、乘、除等功能的各种命令。所以,这一类信息就称为控制命令,即由控制器去控制运算器一步步地进行运算和处理,又控制存贮器的读(取出数据)和写(存入数据)等。第三类信息是地址信息,其作用是告诉运算器和控制器在何处去取命令取数据,将结果存放到什
14、么地方,通过哪个口输入和输出信息等。存贮器又分为只读存贮器和读写存贮器两种,前者存放调试好的固定程序和常基于AT89C51家庭温度智能控制系统的设计与仿真数,后者存放一些随时有可能变动的数据。顾名思义,只读存贮器一旦将数据存入,就只能读出,不能更改(EPROM、E2PROM等类型的ROM可通过一定的方法来更改、写入数据编者注)。而读写存贮器可随时存入或读出数据。实际上,人们往往把运算器和控制器合并称为中央处理单元CPU。单片机除了进行运算外,还要完成控制功能。所以离不开计数和定时。到这里为止,我们已经知道了单片机的基本组成,即单片机是由中央处理器(即CPU中的运算器和控制器)、只读存贮器(通常
15、表示为ROM)、读写存贮器(又称随机存贮器通常表示为RAM)、输入/输出口(又分为并行口和串行口,表示为I/O口)等等组成。实际上单片机里面还有一个时钟电路,使单片机在进行运算和控制时,都能有节奏地进行。另外,还有所谓的“中断系统”,这个系统有“传达室”的作用,当单片机控制对象的参数到达某个需要加以干预的状态时,就可经此“传达室”通报给CPU,使CPU根据外部事态的轻重缓急来采取适当的应付措施。现在,我们已经知道了单片机的组成,余下的问题是如何将它们的各部分连接成相互关联的整体呢?实际上,单片机部有一条将它们连接起来的“纽带”,即所谓的“部总线”。此总线有如大城市的“干道”,而CPU、ROM、
16、RAM、I/O口、中断系统等就分布在此“总线”的两旁,并和它连通。从而,一切指令、数据都可经部总线传送,有如大城市各种物品的传送都经过干道进行。2.1.1 AT89C51的基本结构和工作原理AT89C51单片机的主要工作特性:含4KB的FLASH存储器,擦写次数1000次;含28字节的RAM;具有32根可编程I/O线;具有2个16位可编程定时器;具有6个中断源、5个中断矢量、2级优先权的中断结构;具有1个全双工的可编程串行通信接口;具有一个数据指针DPTR;两种低功耗工作模式,即空闲模式和掉电模式;具有可编程的3级程序锁定定位;AT89C51的工作电源电压为5(10.2)V且典型值为5V,最高
17、工作频率为24MHz.AT89C51各部分的组成与功能:振荡器和时钟电路数据存储器128字节程序存储器14KBCPU两个16位定时器计数器中断控制总线扩展控制器并行可编程I/O口可编程串行口内部总线P0 P1 P2 P3扩展控制外部中断TXDRXD1. 中央处理器1.单片机的中央处理器(CPU)是单片机的核心,完成运算和操作控制,主要包括运算器和控制器两部分。地址寄存器片内ROM程序计数器 PC增量器暂存器1B寄存ACPSENALEEARST定时与控制指令译码器指令寄存器暂存器2PSW ALU智能温度控制系统的概述(1)运算器运算器主要用来实现算术、逻辑运算和位操作。其中包括算术和逻辑运算单元
18、ALU、累加器ACC、B寄存器、程序状态字PSW和两个暂存器等。ALU是运算电路的核心,实质上是一个全加器,完成基本的算术和逻辑运算。算术运算包括加、减、乘、除、增量、减量、BCD码运算;逻辑运算包括“与”、“或”、“异或”、左移位、右移位和半字节交换,以与位操作中的位置位、位复位等。暂存器1和暂存器2是ALU的两个输入,用于暂存参与运算的数据。ALU的输出也是两个:一个是累加器,数据经运算后,其结果又通过部总线返回到累加器;另一个是程序状态字PSW,用于存储运算和操作结果的状态。累加器是CPU使用最频繁的一个寄存器。ACC既是ALU处理数据的来源,又是ALU运算结果的存放单元。单片机与片外R
19、AM或I/O扩展口进行数据交换必须通过ACC来进行。B寄存器在乘法和除法指令中作为ALU的输入之一,另一个输入来自ACC。运算结果存于AB寄存器中。(2)控制器控制器是识别指令并根据指令性质协调计算机各组成单元进行工作的部件,主要包括程序计数器PC、PC增量器、指令寄存器、指令译码器、定时与控制逻辑电路等,其功能是控制指令的读入、译码和执行,并对指令执行过程进行定时和逻辑控制。AT89C51单片机中,PC是一个16位的计数器,可对64KB程序存储器进行寻址。复位时PC的容是0000H.(3)存储器单片机部的存储器分为程序存储器和数据存储器。AT89C51单片机的程序存储器采用4KB的快速擦写存
20、储器Flash Memory,编程和擦除完全是电器实现。(4)外围接口电路 AT89C51单片机的外围接口电路主要包括:4个可编程并行I/O口,1个可编程串行口,2个16位的可编程定时器以与中断系统等。AT89C51的工作原理:1.引脚排列与功能AT89C51的封装形式有PDIP,TQFP,PLCC等,现以PDIP为例。(1)I/O口线P0口8位、漏极开路的双向I/O口。当使用片外存储器与外扩I/O口时,P0口作为低字节地址/数据复用线。在编程时,P0口可用于接收指令代码字节;程序校验时,可输出指令字节。P0口也可做通用I/O口使用,但需加上拉电阻。作为普通输入时,应输出锁存器配置1。P0口可
21、驱动8个TTL负载。P1口8位、准双向I/O口,具有部上拉电阻。P1口是为用户准备的I/O双向口。在编程和校验时,可用作输入低8位地址。用作输入时,应先将输出锁存器置1。P1口可驱动4个TTL负载。P28位、准双向I/O口,具有部上拉电阻。当使用外存储器或外扩I/O口时,P2口输出高8位地址。在编程和校验时,P2口接收高字节地址和某些控制信号。P38位、准双向I/O口,具有部上拉电阻。P3口可作为普通I/O口。用作输入时,应先将输出锁存器置1。在编程/校验时,P3口接收某些控制信号。它可驱动4个TTL负载。(2)控制信号线RST复位输入信号,高电平有效。在振荡器稳定工作时,在RST脚施加两个机
22、器周期以上的高电平,将器件复位。EA/VPP外部程序存储器访问允许信号EA.当EA信号接地时,对ROM的读操作限定在外部程序存储器,地址为0000H-FFFFH;当EA接VCC时,对ROM的读操作从部程序存储器开始,并可延续至外部程序存储器。在编程时,该引脚可接编程电压5V或12V。在编程校验时,该引脚可接VCC。PSEN片外程序存储器读选通信号PSEN,低电平有效。在片外程序存储器取指期间,当PSEN有效时,程序存储器的容被送至P0口;在访问外部RAM时,PSEN 无效。ALE/PROG低字节锁存信号ALE.在系统扩展时,ALE的下降沿将P0口输出的低8位地址锁存在外接的地址锁存器中,以实现
23、低字节地址和数据的分时传送。此外,ALE端连续输出正脉冲,频率为晶振频率的1/6,可做外部定时脉冲使用。(3)外部晶振引线智能温度控制系统的概述XTAL1片振荡器反向放大器和时钟发生线路的输入端。使用片振荡器时,连接外部石英晶体和微调电容。XTAL2片振荡器反相放大器的输出端。当使用片振荡器时,外接石英晶体和微调电容。1.存储器组织和特殊功能寄存器AT89C51的存储器将程序存储器和数据存储器分开,并有各自的存储空间和访问指令。它有4个存储空间:片存储器、片外存储器、片数据存储器与片外存储器。2.时钟电路和工作时序振荡器(1) 振荡器电路原理&Rf Q2 Q36PDXTAL1(2)振荡电路的接
24、法C2XTAL2XTAL1CNDXTAL2XTAL1GNDNC外部振荡器信号C1AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROMFlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器
25、,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。主要技指标和特性与MCS-51兼容4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24MHz三级程序存储器锁定1288位部RAM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片振荡器和时钟电路外部引脚VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第
26、八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。智能温度控制系统的概述P2口:P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于部上拉的
27、缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存
28、允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号
29、将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有部程序存储器。注意加密方式1时,/EA将部锁定为RESET;当/EA端保持高电平时,此间部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入与部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。2.2温度传感器的选择2.2.1DS18B20的介绍美国Dallas 半导体公司的数字化温度传感器DS1820 是世界上第一片支持 一线总线接口的温度传感器,在其部使用了在板(ON-B0ARD)专利技术。全部传感元件与转换电路集成在形
30、如一只三极管的集成电路。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在,新一代的DS18B20 体积更小、更经济、更灵活。使你可以充分发挥“一线总线”的优点。目前DS18B20 批量采购价格仅10 元左右。2.2.2 DS18B20的部结构与测温原理DS18B20的主要特征:(1)适应电压围更宽,电压围:3.05.5V,在寄生电源方式下可由数据线供电;(2)独特的单线接口方式,DS18B20 在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20 的双向通讯;(3)DS18B20 支持多点组网功能,多个DS18B20 可以并联在唯一的三线
31、上,实现组网多点测温;(4)DS18B20 在使用中不需要任何外围元件,全部传感元件与转换电路集成在形如一只三极管的集成电路;(5)温围55125,在-10+85时精度为0.5;(6)可编程的分辨率为912 位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温;(7)在9 位分辨率时最多在93.75ms 把温度转换为数字,12 位分辨率时最多在750ms 把温度值转换为数字,速度更快;(8)测量结果直接输出数字温度信号,以一线总线串行传送给CPU,同时可传送CRC 校验码,具有极强的抗干扰纠错能力;(9)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正
32、常工作。智能温度控制系统的概述DS18B20 部结构主要由四部分组成:64 位光刻ROM、温度传感器、非挥发的温度报警触发器TH 和TL、配置寄存器。 DS18B20 引脚定义:(1) GND为电源地;(2) DQ为数字信号输入/输出端;(3)VDD 为外接供电电源输入端(在寄生电源接线方式时接地)。图1 ds18b20引脚分布图DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工作周期可分为两个部分,即温度检测和数据处理。在讲解其工作流程之前我们有必要了解18B20的部存储器资源。18B20共有三种形态的存储器资源,它们分别是:ROM 只读存储器,用于存放D
33、S18B20ID编码,其前8位是单线系列编码(DS18B20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56的位的CRC码(冗余校验)。数据在出产时设置不由用户更改。DS18B20共64位ROM。RAM 数据暂存器,用于部计算和数据存取,数据在掉电后丢失,DS18B20共9个字节RAM,每个字节为8位。第1、2个字节是温度转换后的数据值信息,第3、4个字节是用户EEPROM(常用于温度报警值储存)的镜像。在上电复位时其值将被刷新。第5个字节则是用户第3个EEPROM的镜像。第6、7、8个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是部温度转换、计算的暂存
34、单元。第9个字节为前8个字节的CRC码。EEPROM 非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,DS18B20共3位EEPROM,并在RAM都存在镜像,以方便用户操作。控制器对18B20操作流程:1,复位:首先我们必须对DS18B20芯片进行复位,复位就是由控制器(单片机)给DS18B20单总线至少480uS的低电平信号。当18B20接到此复位信号后则会在1560uS后回发一个芯片的存在脉冲。2,存在脉冲:在复位电平完毕之后,控制器应该将数据单总线拉高,以便于在1560uS后接收存在脉冲,存在脉冲为一个60240uS的低电平信号。至此,通信双方已经达成了基本的协议
35、,接下来将会是控制器与18B20间的数据通信。如果复位低电平的时间不足或是单总线的电路断路都不会接到存在脉冲,在设计时要注意意外情况的处理。3,控制器发送ROM指令:双方打完了招呼之后最要将进行交流了,ROM指令共有5条,每一个工作周期只能发一条,ROM指令分别是读ROM数据、指定匹配芯片、跳跃ROM、芯片搜索、报警芯片搜索。ROM指令为8位长度,功能是对片的64位光刻ROM进行操作。其主要目的是为了分辨一条总线上挂接的多个器件并作处理。诚然,单总线上可以同时挂接多个器件,并通过每个器件上所独有的ID号来区别,一般只挂接单个18B20芯片时可以跳过ROM指令(注意:此处指的跳过ROM指令并非不
36、发送ROM指令,而是用特有的一条“跳过指令”)。ROM指令在下文有详细的介绍。4,控制器发送存储器操作指令:在ROM指令发送给18B20之后,紧接着(不间断)就是发送存储器操作指令了。操作指令同样为8位,共6条,存储器操作指令分别是写RAM数据、读RAM数据、将RAM数据复制到EEPROM、温度转换、将EEPROM中的报警值复制到RAM、工作方式切换。存储器操作指令的功能是命令18B20作什么样的工作,是芯片控制的关键。5,执行或数据读写:一个存储器操作指令完毕后则将进行指令执行或数据的读写,这个操作要视存储器操作指令而定。如执行温度转换指令则控制器(单片机)必须等待18B20执行其指令,一般
37、转换时间为500uS。如执行数据读写指令则需要严格遵循18B20的读写时序来操作。数据的读写方法将有下文有详细介绍。若要读出当前的温度数据我们需要执行两次工作周期,第一个周期为复位、跳过ROM指令、执行温度转换存储器操作指令、等待500uS温度转换时间。紧接着执行第二个周期为复位、跳过ROM指令、执行读RAM的存储器操作指令、读数据(最多为9基于AT89c51家庭温度智能控制系统的设计和仿真个字节,中途可停止,只读简单温度值则读前2个字节即可)。其它的操作流程也小异,在此不多介绍。DS18B20测温原理:低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数
38、晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。DS18B20功能特点:1. 采用单总线技术,与单片机通信只需要一根I/O线,在一根线上可以挂接多个DS18B20。 2. 每只DS18B20具有一个独有的,不可修改的64位序列号,根据序列号访问地应的
39、器件。 3. 低压供电,电源围从35V,可以本地供电,也可以直接从数据线上窃取电源(寄生电源方式)。 4. 测温围为-55+125,在-1085围误差为0.5。 5. 可编辑数据为912位,转换12位温度时间为750ms(最大)。 6. 用户可自设定报警上下限温度。 7. 报警搜索命令可识别和寻址哪个器件的温度超出预定值。 8. DS18B20的分辩率由用户通过EEPROM设置为912位。 9. DS18B20可将检测到温度值直接转化为数字量,并通过串行通信的方式与主控制器进行数据通信。DS18B20有4个主要的数据部件:1.光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18
40、B20的地址序列码。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,后者
41、存放高温度和低温度触发器智能温度控制系统的概述TH、TL和结构寄存器。4.配置寄存器。2.2.3 DS18B20使用中的须知DS18B20 虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题:1.DS18B20 从测温完毕到将温度值转换成数字量需要一定的转换时间,这是必须保证的,不然会出现转换错误的现象,使温度输出总是显示85。2.在实际使用中发现,应使电源电压保持在5V 左右,若电源电压过低,会使所测得的温度精度降低。3.较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程
42、时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。4.在DS18B20的有关资料中均未提与单总线上所挂DS18B20 数量问题,容易使人误认为可以挂任意多个DS18B20,在实际应用中并非如此,当单总线上所挂DS18B20 超过8 个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。5.在DS18B20测温程序设计中,向DS18B20 发出温度转换命令后,程序总要等待DS18B20的返回信号,一旦某个DS18B20 接触不好或断线,当程序读该DS18B20 时,将没有返回
43、信号,程序进入死循环,这一点在进行DS18B20硬件连接和软件设计时也要给予一定的重视。2.3 LED显示屏的介绍和工作原理LED显示屏的工作原理现在一般把显示图形或文字的LED 显示屏称为图文屏,其实LED 图文显示屏并没有一个公认的严格的定义,这里所谓的图形,是指由单色固定亮度的点阵线条组成的任意图形,其中LED 点阵发光器件或发光或熄灭,即只有两种状态。本系统设计正是基于 LED 图文显示屏实际应用,着重实现LED 显示屏的图文编辑与设备驱动。 1.1.LED图文显示屏软件模块工作原理 LED图文显示屏屏软件系统的功能是实现需智能温度控制系统的概述要联机动态显示和更新部分或全部LED图文
44、显示屏系统显示容。动态显示只是对文字显示来说的。在应用软件的支持下,录入的文字实时的由计算机下载给主控制器,并实时进行显示;更新显示容时,计算机将录入的文字或图形数据下载给主控器,并存入存储器中。录入完毕移去计算机后,将显示更新后的容;也可由计算机下达命令,显示固化的容。因此,相应的应用软件主要由主界面、动态显示界面、图象预览界面、串口校验等界面组成。设计的应用软件在Windows 操作系统下使用。主控制界面的工作原理 :系统采用 Windows 标准风格的下拉菜单主界面,应该实现如下功能:在窗体菜单栏选择在更新显示容时的图形、文字的编辑,颜色的选取控制,对于字模的提取与保存的控制以与对于存储
45、的待显示信息的优化处理,动态效果的添加,文件传输前的调整和设备通讯前的设置功能。效果处理界面原理 :系统要求满足:将保存后的单屏静态显示效果的信息文件打开,通过手工设置,确认将要实现如瞬间显示,由左至右滚动显示的效果;可以通过手工添加实现多屏文件保存成一个文件通过串口传输。 1.2LED图文显示屏硬件模块工作原理图文显示屏的硬件硬件模块基本结构可以分为屏体和控制器两大部分。屏体部分结构与功能 :屏体部分主要是 LED 和行列驱动电路构成。不论是图形还是文字,都是控制与组成这些图形或文字的各个点所在的位置相对应的LED 器件发光。根据屏幕所需的平面面积大小,选择一定数量的LED。像数码管一类的L
46、ED 显示器件只在需要发光的七段位置上布置LED 器件,其它位置都是空白的,因此相对价格比较便宜。但是,由于数码管显示的信息有限,只有 0-9(或再扩展到 A-F)几个字符,这些字符的变化是靠组合 7 段 LED 的发光与否实现的。由于段数不多,组合形成的字符也不多。而用点阵方式构成图形或文字,是非常灵活的,可以根据需要任意组合和变化,只要设计好适宜的数据文件,每个LED 发光器件占据数据中的一位,通过对点阵上全部的LED 进行控制,在需要该LED 器件发光时数据中相应的位填1,否则填0,这样依照所需显示的图形文字,按显示屏的各行各列逐点填写显示数据,就可以构成一个显示数据文件,得到满意的显示效果。由于文字的显示点阵格式比较规,可以采用现行计算机通用的字库字模,如汉字的宋体、楷体和黑体等多种可供选择的方案;其大小也可以有 16*16、24*24、32*32、48*48 等不同规格。图文显示屏的颜色,有单色、双色和多色几种。本系统根据实际应用环境采用的是单色图文屏,采用红色的LED 点阵单元。对于双色图文屏和多色图文屏来说,在LED 点阵的每一个“点”上布置两个或多个不同颜色的 LED 发光器件,对应于每种颜色都有自己的显示矩阵。显示的时候,各个颜色的显示点阵是分开控制的。事先设计好各种颜色的显示数据,显示时分别送到各自的显示点阵,即可实现预期的效果。每一种