《温度控制系统毕业设计 .pdf》由会员分享,可在线阅读,更多相关《温度控制系统毕业设计 .pdf(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于单片机的温度采集系统设计报告第1 页 共 54 页摘要在日常生活及工农业生产中,对温度的检测及控制时常显得极其重要。因此,对数字显示温度计的设计有着实际意义和广泛的应用。本文介绍一种利用单片机实现对温度只能控制及显示方案。本毕业设计主要研究的是对高精度的数字温度计的设计,继而实现对对象的测温。测温系数主要包括供电电源,数字温度传感器的数据采集电路,LED显示电路,蜂鸣报警电路,继电器控制,按键电路,单片机主板电路。高精度数字温度计的测温过程,由数字温度传感器采集所测对象的温度,并将温度传输到单片机,最终由液晶显示器显示温度值。该数字温度计测温范围在-55+125,精度误差在 0.5 以内,
2、然后通过LED数码管直接显示出温度值。数字温度计完全可代替传统的水银温度计,可以在家庭以及工业中都可以应用,实用价值很高。关键词:单片机:ds18b20:LED显示:数字温度.Abstract In our daily life and industrial and agricultural production,the detection and control of the temperature,the digital thermometer has practical significance and a wide range of applications.This article
3、describes a programmer which use a microcontroller to achieve and display the right temperature by intelligent control.This programmer mainly consists by temperature control sensors,MCU,LED display modules circuit.The main aim of this thesis is to design high-precision digital thermometer and then r
4、ealize the object temperature measurement.Temperature measurement system includes power supply,data acquisition circuit,buzzer alarm circuit,keypad circuit,board with a microcontroller circuit is the key to the whole system.The temperature process of high-precision digital thermometer,from collectin
5、g the temperature of the object by the digital temperature sensor and the temperature transmit ted to the microcontroller,and ultimately display temperature by the LED.The digital thermometer requires the high degree is positive 125and the low degree is negative 55,the error is less than 0.5,LED can
6、 read the number.This digital thermometer could 名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 43 页 -基于单片机的温度采集系统设计报告第2 页 共 54 页replace the traditional mercurial thermometer,can be used in family or industrial and production,it has a great value.Key words:MCU:DS18B20:LED display:Digital thermometer。名师资料总结-精品资料欢迎下载-
7、名师精心整理-第 2 页,共 43 页 -基于单片机的温度采集系统设计报告第3 页 共 54 页1.绪论 4 1.1 课题背景 4 1.2 立题的目的和意义 4 1.3 温度控制系统的预期功能和基本原理 5 1.4 本系统主要研究内容 6 2.多功温度控制系统总体分析与设计 7 2.1 温度控制系统的组成和工作原理 7 2.2 温度采集转换系统 8 2.3 升降温控制系统10 2.4 键盘显示系统11 2.5 报警系统12 2.6 电源系统13 2.7 硬件电路设计14 2.7.1 系统硬件配置14 2.7.2 主要元件简介14 3.软件系统设计28 3.1 软件总体设计28 3.2 系统初始
8、化函数29 3.3 控制函数30 3.4 键盘显示函数31 3.5 降温函数31 3.6 曲线算法32 3.7 采样33 结论 35 致谢 36 参考文献37 系统源程序38名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 43 页 -基于单片机的温度采集系统设计报告第4 页 共 54 页基于 8051 单片机的温度采集器1 绪论1.1 课题背景温度控制是自动控制经常讨论的课题之一,它代表了一类自动控制的方法。而且其应用十分广泛,可以说在生产生活中无处不在,例如锅炉、电冰箱等。而由温度控制带来的时滞效应难题始终困扰着实际应用。随着科学技术的高速发展,温度控制技术得到了很大的进步,其
9、应用的领域也不断的扩大。本文将使用 8051 型单片机对温度控制的基本原理实例化,设计一个带有多功能的、能够减小时滞效应的温度采集控制系统。目的是利用毕业设计的这段时间学习一种利用 8051 型单片机进行温度采集控制的方法。1.2 立题的目的和意义8051 型单片机是常用的控制芯片,在智能仪器仪、工业检测控制、机电一体化等方面取得了令人瞩目的成果,用其作为温度采集控制系统的实例也很多。使用 8051 单片机能够实现温度全程的自动控制,而且 8051单片机易于学习、掌握,性能价格比高。使用 8051 型单片机设计温度采集控制系统,可以即时、精确的反映温度变化。完成诸如升温到特定温度、降温到特定温
10、度、在温度点保持恒温等多种控制方式,可以应用到空调、锅炉、电热器一类的设备上。名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 43 页 -基于单片机的温度采集系统设计报告第5 页 共 54 页1.3 温度控制系统的预期功能和基本原理多功能温度控制系统的设计初衷是满足实际生产中温度控制的需要。为此本系统针对实际应用开发了两种温度控制的模式。第一种控制模式类似于空调,锅炉等需要保持在一定区间内恒温的设备,他们都需要有加温或降温功能,有的当温度超过一定上限时会报警。本系统中把这种工作模式命名为Control模式,简写为 C模式。系统工作在这种模式下时,首先系统会提示用户输入温度的上限与
11、下限的温度值。然后根据实际温度的情况决定采取那些方案。如下图131 所示:用户设定的下限温度用户设定的下限温度当前实际温度图 131 第一种控制模式示意图该时刻的实际温度低于用户设定的下限温度,所以此时刻系统正处于升温状态,直到实际温度到达上限温度值,系统才停止升温。反之,如果实际温度高于用户设定的下限值时,系统处于降温状态。当实际温度超过用户设定的上、下限温度时,系统还会通过声音、警报灯来报警,同时启动相应的降升温措施。第二种模式在日常生产中是十分普遍的,例如铸造模具、热时效处理等都需要完成“升温恒温降温”反复的过程。本系统模拟了热时效的处理过程,采用“升温恒温升温恒温降温恒温降温”的梯形曲
12、线过程,如下图132 所示的:温度时间 秒名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 43 页 -基于单片机的温度采集系统设计报告第6 页 共 54 页图 132 图 131 第二种控制模式示意图这种模式对温度控制的要求比较高,技术指标也很多,例如必须保持采样时间有单位并且均匀、升温降温的过程要稳定、迅速等。常用的温度控制算法都采用PID 算法。本设计从成本、设计复杂度、实用性及开发时间诸多因素的考虑采用了DDC 算法,主要体现在升降温过程中。系统为典型的反馈式温度控制系统,组成部分见图133。其中数字控制器的功能由8051单片机实现。图 133 温度控制系统组成框图1.4
13、本系统主要研究内容本系统所要完成的任务是:(1)能够实时、准确的采样温度值。(2)能够以 DDC 控制方式,进行升温、降温过程。(3)完成温度梯形曲线的变化过程。(4)更加人性化的设计。上、下界限温度能够用户输入并显示,声音、警报灯的报警功能等。名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 43 页 -基于单片机的温度采集系统设计报告第7 页 共 54 页2.多功温度控制系统总体分析与设计2.1 温度控制系统的组成和工作原理多功能温度控制系统能是以8051 单片机作为核心,周边设备使用DS18B20型单线智能温度传感器、液晶显示芯片74HC00、继电器及其驱动电路、红、蓝色发光
14、二极管、蜂鸣器、电加热器、直流电机风扇等。经DS18B20 采集到的数字量与用户设定的温度值进行比较,即可得到现场温度和设定温度的偏差。用户设定值由键盘输入。由8051 单片机构成的数字控制器按最小拍进行运算,计算出所需要的控制量。数字控制器的输出经标度变换后送给8051 内部定时计数器转变为高低电平的不同持续时间,送至继电器及其驱动电路,触发晶闸管并改变其导通角大小,从而控制电加热器的加热电压,起到控温的作用。系统基本硬件结构框图如图211 所示。其功能和原理如下:(1)8051:负责中心运算和控制,协调系统各个模块的工作。(2)温度温度传感器DS18B20:负责温度与数字量的转化。其精度可
15、精确到小数点后四位。(3)功率模块:采用随机型固态继电器控制加热设备的方式。随机型固态继电器采用低电压输入方式,一般为DC3 10V,用可控硅做输出器件。这样控制部分与大功率部分实现隔离,可抑制干扰。名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 43 页 -基于单片机的温度采集系统设计报告第8 页 共 54 页图 211 系统基本硬件结构框图(4)人机交互模块:用4X1键盘和液晶显示器构成友善的人机交互界面。(5)抗干扰模块:使用看门狗芯片X25045,其看门狗功能将对系统起到有效的监视作用,内含512B串行 E2PROM,具有掉电非易失特性,在本系统中做数据备份用。(6)红、
16、蓝色LED,蜂鸣器:负责系统的报警功能。当温度超过用户设定的上、下限值时系统将报警。LED灯在单片机的控制下点亮,同时蜂鸣器发出报警声,通知用户采取相应的措施。2.2 温度采集转换系统在设计此类系统时,传统的方法是通过热敏电阻或模拟集成温度传感器采集温度的模拟量,再用 A/D 器将转换后的数字量送给单片机,这些方案的主要缺点是精度差,(例如典型的模拟集成温度传感器AD590的精度仅为 0.5)并且因为采用了 A/D 转换器使电路过于复杂。基于简化电路,提高性价比的考虑,本设计采用集成化智能型温度传感器DS18B20 完成现场温度的采集。系统电路图如图221 所示图 221 温度转换采集系统电路
17、图名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 43 页 -基于单片机的温度采集系统设计报告第9 页 共 54 页DS18B20 是美国 DALLAS 公司生产单线智能温度传感器,其采用 DALLAS 公司独特的“单线(1Wire)总线”专有技术,通过串行通信接口(I/O)直接输出被测温度值(912 位二进制数据,含符号位)。其工作在在 12 位模式下时,所对应的温度分辨力高达0.0625。温度/数字转换时间的典型值为93.75ms。根据定义,单线总线只有一根线,这意味着总线上每个器件只能分时驱动单线 总 线,并 要 求 每 个 器 件 必 须 有 漏 极 开 路 输 出 或
18、三 态 输 出 的 特 性。DS18B20 的单线接口 I/O 就属于漏极开路输出。在单线总线上必须接上拉电阻,其电阻值约为5K(标称值可取5.1 K 或 4.7 K)。当单线总线上挂有多个从属器件时,也称之为多点总线。单线总线杂空闲状态下呈高电平。操作单线总线时,必须从空闲状态开始。单线总线加低电平的转换时间超过480us 时,总线上所有的器件均被复位。在主CPU发出复位脉冲后,从属器件就发出应答脉冲(PRESENCE PULSE),来通知主CPU 它已经作好了接收数据和命令的准备工作。DS18B20 与微处理器的电路接法如图222 所示:寄生电源接法外部电源接法图 222 DS18B20与
19、微处理器连接图而传统温度采集转换系统则通过温度传感器集成芯片将温度变化量转换成名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 43 页 -基于单片机的温度采集系统设计报告第10 页 共 54 页电流值变化量,输入放大电路转换为电流变化量,再输入 ADC0809 将模拟信号转换为数字信号。利用单片机采集并存储采集到的数据。系统电路图如下图223 所示。图 223 传统温度采集转换系统电路图2.3 升降温控制系统本系统使用 DDC 控制技术。DDC 控制是当现场温度在用户设定的上、下限温度范围内时,加热器或降温器的工作随着温度接近临界值而相应调整的一种控制方式,通常所说的DDC段一般
20、定为 5,当温度变化超出这个范围时,加热器或降温器被控制为DDC 控制,一般有下面二种控制方式:时间DDC 型、电流 DDC型,DDC 控制能消除 开关 型控制产生的锯齿波形,减少对电网的冲击,如图231 的 DDC控制一般不用在负载变化范围较大而控制精度又较高的场合。图 231 DDC控制下的现场温度曲线名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 43 页 -基于单片机的温度采集系统设计报告第11页 共 54 页此系统由继电器及其驱动电路,直流电机风扇,散热片及电加热器组成,完成温度的升降。利用继电器及其驱动电路,直流电机风扇相组合可实现风扇的转速控制,驱动电路实际上是一
21、个复杂的放大电路,如图232 所示:图 232 继电器及其驱动电路电路图连接到直流电机风扇后,转动方向是由电压来控制的,电压为正则正转,电压为负则反转。转速大小则是由输出脉冲的占空比来决定的,正向占空比越大则转速越快,反向转则占空比越小转速越快。见下面图233:图 233 直流电机风扇控制脉冲图在程序设计中用 P1.4 控制送出脉冲。P1.4 为“1”时,输出 12V;P1.4 为“0”时,输出 0V。用输出脉冲后的延时时间来决定输出电压值,具体的情况将在第三章中说明。2.4 键盘显示系统本系统的用户界面利用人机工程学原理,运用系统科学理论和系统科学方法进行设计,使其能够适合操作者的应用需求。
22、LCD的应用使操作者能够用容易理解的方式显示控制系统的当前状态和操作者关心的信息,例如当前时间、当前温名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 43 页 -基于单片机的温度采集系统设计报告第12 页 共 54 页度、上限温度、下限温度。系统给操作者提供容易理解和充分的信息提示,以方便操作者的正确使用。同时,还考虑了用户操作界面有较好的容错能力,提高了系统的整体综合能力。系统的连接图如图241 所示。图 241 键盘显示系统电路图本设计由 74HC00芯片控制的 4 键键盘和液晶显示器组成,以实现用户的输入与数据输出。第一个键的作用是配合第三个键(加1)和第四个键(减1)对
23、进行时间设定,第二个键的作用是配合第三个键(加1)和第四个键(减1)对上、下限温度进行设定。2.5 报警系统报警系统由声报警和光报警组成。声报警通过P1.6 接控制爱迪克系统的音效模块发声,用单片机控制P1.6 产生一定频率的方波就可以实现音效模块的发声。音效模块是一个带有扬声器的放大电路。其电路图如图251 所示。图 251 报警系统(声报警)电路图名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 43 页 -基于单片机的温度采集系统设计报告第13 页 共 54 页光报警由 1 个红色发光二极管和1 个蓝色发光二极管组成,一共需要 2 根数据线,使用单片机直接控制。要实现的功能
24、是在第一种工作模式下时,当现场温度高于用户设定的上限温度时,红色发光二极管点亮;当现场温度低于用户设定的下限温度时,蓝色发光二极管点亮。在第二种工作模式下,保持恒久熄灭状态。其电路图如图 252 所示。图 252 报警系统(光报警)电路图2.6 电源系统电源的滤波、保护电路对电源有重要的意义,系统能否安全使用,很大程度上取决于电源的稳定和保护。本设计使用 4 个二极管构成的桥式整流电路为其整流电路,如图261 所示。滤波电路选用电容滤波,稳压选用三稳压块7805和 7812,此电路简单适用。继电器和直流电机风扇用到12V 电源,单片机等使用+5V电源。本电源系统由 U1(7805)、U2(78
25、12)和发光二极管 LED及相关阻容元件构成,其中 U1输出稳定的 5V电压,U1输出稳定的 12V电压。发光二极管在这里作为电源指示,R3为 LED的限流电阻。C8,C9,C10,C11为电源滤波电容。图 261 电源系统电路图名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 43 页 -基于单片机的温度采集系统设计报告第14 页 共 54 页2.7 硬件电路设计2.7.1 系统硬件配置采用总线型结构的设计。由P0口作数据线,P0口和 P2口共同作地址线。2.7.2 主要元件简介8051单片机8051是 Intel公司于 80 年代初推出的 8 位嵌入式微控制器(内部数据总线为
26、 8 位,外部数据总线为8 位),它与 MCS 96 系统中的其它芯片相比,具有性能高、功能全、售价低廉、使用方便(48PINDIP)等优点。8051 在工业应用方面有许多明显的特点,它具有灵活方便的8 位总线外围支援器扩展功能,而在数据处理方面又有 8 位微机的快速功能。由于大的高度集成化已把许多常驻用的输入检测输出控制通道都制作在同一块硅片上,大大地灵活了外部连线,增强了系统的稳定性并且速度快(时钟12MHz),非常适合于工业环境下安装使用。因此本系统 CPU 选用 8051 芯片。8051单片机引脚采用 40 双列直插式封装结构。其引脚图如图 271 所示。8051CPU 中的主要元件有
27、:高速寄存器阵列、特殊功能寄存器(SFR)、寄存器控制器和算术逻辑单元(RALU)。它与外部通讯是通过特殊功能寄存器SFR或存储器控制器进行的。8051CPU 的主要特色是体积小,重量轻,抗干扰能力强,售价低,使用方便。此外,通过SFR还可以直接控制 I/O、A/D、PWM、串行口等部件的有效运行。CPU内部的一个控制单元和两条总线寄存器阵列和EALU连接起来。这两条总线是:16 位地址总线(A-BUS)和 8 位数据总线(D-BUS)。数据总线仅在 RALU与寄存器阵列或 SFR之间传送数据,地址总线用作上述数据传送的地址总线或用名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共
28、 43 页 -基于单片机的温度采集系统设计报告第15 页 共 54 页作与寄存器控制器连接的多路复用地址/数据总线。CPU对片内 RAM 访问是直接访问和通过寄存器R0,R1间接访问的。8051 工作时所需的时钟可通过其XTALL输入引脚由外部输入,也可采用芯片内部的振荡器。8051 的工作频率为612MHz。在本系统中采用11.0592MHz频率。图 271 8051 单片机引脚图8051 每次上电时必须复位。所谓复位,就是让单片机应用系统在正式工作之前处于一种特定状态,即正式工作前的起点,这个任务就是由复位电路来完成。8051单片机在引脚 RESET/Vpp 出现高电平时实现复位和初始化。
29、RESET 由高电平变低电平后,单片机从0000h 地址开始执行程序,其初始复位不影响内部RAM的状态,包括工作寄存器R7R0。在正常运行的情况下,要实现复位操作,必须使 RESET 引脚至少保持两个机器周期的高电平。CPU 在第二个机器周期内执行内部复位操作,以后每一个机器周期重复一次,直至 RESET 端电平变低。复位期间不产生 ALE及 PSEN 信号。8051的内部结构框图如图272 所示。名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 43 页 -基于单片机的温度采集系统设计报告第16 页 共 54 页图 272 8051 单片机内部结构框图2.1602 液晶显示器液
30、晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。本设计使用的字符型液晶模块是一种用5x7 点阵图形来显示字符的液晶显示器,容量为 1 行 2 行 16 个字。1602 采用标准的 16 脚接口,其中 VSS为地电源,VDD 接 5V正电源,V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,可通过一 10K的电位器调整对比度。RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。RW 为读写信号线,高电平时进行读操作,低电平时进行写操作。当 RS和 RW 共同为低电平
31、时可以写入指令或者显示地址,当RS为低电平 RW 为高电平时可以读忙信号,当RS为高电平 RW 为低电平时可以写入数据。E 端为使能端,当E 端由高电平跳变成低电平时,液晶模块执行命令。D0D7为 8 位双向数据线。1602液晶模块内部的字符发生存储器(CGROM)存储了 160 个点阵字符图形,名师资料总结-精品资料欢迎下载-名师精心整理-第 16 页,共 43 页 -基于单片机的温度采集系统设计报告第17 页 共 54 页如图 2-7-1 所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是 0100000
32、1B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。1602液晶模块内部的控制器共有11 条控制指令,如表271 所示:表 271 1602 液晶模块指令表指令S/W 7 6 5 4 3 2 1 0 清显示0 0 0 0 0 0 0 0 0 1 光标返回0 0 0 0 0 0 0 0 1*置输入模式0 0 0 0 0 0 0 1/D S 显示开/关控制0 0 0 0 0 0 1 D C B 光标或字符移位0 0 0 0 0 1/C/L*置功能0 0 0 0 1 L N F*置字符发生存储器地址0 0 0 1 字 符 发 生 存 储 器 地 址(ACG)置数据
33、存储器地址0 0 1 显示数据存储器地址(ADD)读忙标志或地址0 1 F 计数器地址(AC)写数到 CGRAM 或 DDRRAM 1 0 要写的数据从 CGRAM 或 DDRRAM 1 1 读出的数据1602液晶模块的读写操作、屏幕和光标的操作都可以通过指令编程来实现。(说明:1 为高电平、0 为低电平)指令 1:清显示,指令码 01H,光标复位到地址 00H位置 指令 2:光标复位,光标返回到地址00H 指令 3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效指令 4:显示开关控制。D:控制整体显示的开与关
34、,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪名师资料总结-精品资料欢迎下载-名师精心整理-第 17 页,共 43 页 -基于单片机的温度采集系统设计报告第18 页 共 54 页烁,低电平不闪烁指令 5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标指令 6:功能设置命令 DL:高电平时为 4 位总线,低电平时为 8 位总线 N:低电平时为单行显示,高电平时双行显示 F:低电平时显示 5x7的点阵字符,高电平时显示5x10 的点阵字符指令 7:字符发生器 RAM 地址设置指令 8:DDRAM 地址
35、设置指令 9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令 10:写数据 指令 11:读数据1602液晶显示模块可以和单片机8051直接连接,电路如图273 所示。图 2731602 液晶模块与 8051 单片机连接图液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符。名师资料总结-精品资料欢迎下载-名师精心整理-第 18 页,共 43 页 -基于单片机的温度采集系统设计报告第19 页 共 54 页1602的内
36、部显示地址。表 272 1602 液晶模块内部显示地址图1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 比如第二行第一个字符的地址是40H,那么是否直接写入 40H就可以将光标定位在第二行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位D7 恒 定 为 高 电 平1所 以 实 际 写 入 的 数 据 应 该 是01000000B(40H)+10000000B(80H)=11000000B(C0H)以下是在液晶模块的第二行第一个字符的位置显示字母“A”的程序:RS EQU P3.0 RW EQU P3.1 E EQU P3.5 ORG 0000H MOV
37、P1,#00000001B;清屏ACALL ENABLE MOV P1,#00111000B;8 位 2 行 5x7 点阵ACALL ENABLE MOV P1,#00001111B;显示器开、光标开、闪烁开ACALL ENABLE MOV P1,#00000110B;文字不动,光标自动右移ACALL ENABLE MOV P1,#0C0H;写入显示起始地址(第二行第一个位置)ACALL ENABLE MOV P1,01000001B;字母 A的代码SETB RS;RS=1 CLR RW;RW=0 1 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0
38、F 2 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 名师资料总结-精品资料欢迎下载-名师精心整理-第 19 页,共 43 页 -基于单片机的温度采集系统设计报告第20 页 共 54 页CLR E;E=0 ACALL DELAY SETB E;E=1 AJMP$ENABLE:CLR RS;写入控制命令的子程序CLR RW CLR E ACALL DELAY SETB E RET DELAY:MOV P1,#0FFH;判断液晶显示器是否忙的子程序CLR RS SETB RW CLR E NOP SETB E JB P1.7,DELAY;如果 P1
39、.7 为高电平表示忙就循环等待RET 程序在开始时对液晶模块功能进行了初始化设置,约定了显示格式。注意显示字符时光标是自动右移的,无需人工干预,每次输入指令都先调用判断液晶模块是否忙的子程序DELAY,然后输入显示位置的地址0O0H,最后输入要显示的字符 A的代码 41H。3.DS18B20 数字温度传感器 DS18B20 数字温度计是 DALLAS 公司生产的 1Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。一、DS18B20 的性能特点(1)DS18B20 采用 DALLAS 公司独特的“单
40、线(1-Wire)总线”专有技术,通过串行通信接口(I/O)直接输出被测温度值(9位二进制数,含符号位)。名师资料总结-精品资料欢迎下载-名师精心整理-第 20 页,共 43 页 -基于单片机的温度采集系统设计报告第21 页 共 54 页(2)测温范围是 55+125。其分辩力为0.5,但若采用高分辨力模式,分辩力可达 0.1。温度/数字量转换时间的典型值为200ms,最大值为 500 ms。(3)内含 64 位经过激光修正的只读存储器ROM,扣除 8 位产品系列号和8位循环冗余校验码CRC 之后,产品序号占48 位。出厂前就作为DS18B20 唯一的产品序号,存入其 ROM 中,在构成大型温
41、控系统时,允许在单线总线上挂接多片DS18B20。(4)适配各种单片机或系统机。(5)用户可分别设定各路温度的上、下限并写入随机存储器RAM 中。利用报警搜索命令和寻址功能,可迅速识别出发生了温度越限报警的器件。(6)内含寄生电源。该器件既可以由单线总线供电,也可选用外部+5V 电源(允许电压范围是3.4 5.5V),进行温度/数字转换时的工作电流约为1.5 mA,待机电流仅为 25uA,典型功耗为 5mW。二、DS18B20 的引脚介绍PR 35封装的 DS18B20 的引脚排列图 274,其引脚功能描述见表2-7-1。图 274 DS18B20的引脚排列图DS18B20 详细引脚功能描述表
42、 273 DS18B20引脚功能描述图序号名称引脚功能描述1 GND 地信号2 DQ 数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。3 VDD 可选择的 VDD 引脚。当工作于寄生电源时,此引脚必须接地。名师资料总结-精品资料欢迎下载-名师精心整理-第 21 页,共 43 页 -基于单片机的温度采集系统设计报告第22 页 共 54 页三、DS1820的工作原理 DS1820的内部结构如图 275 所示。由图 275 可知,DS1820由三个主要数字器件组成:64bit闪速 ROM;温度传感器;非易失性温度报警 触 发 器TH 和TL。64bit闪 速ROM
43、的 结 构 如 图2 7 6所 示图 275 DS1820内部结构图图 276 DS1820内部的 64bit闪速 ROM 结构图它既可寄生供电也可由外部电源供电。在寄生供电情况下,当总线为高电平时,DS1820从总线上获得能量并储存在内部电容上当总线为低电平时,由电容向 DS1820供电。DS1820的测温原理:内部计数器对一个受温度影响的振荡器的脉冲计数,低温时振荡器的脉冲可以通过门电路,而当到达某一设置高温时振荡器的脉冲无法通过门电路。计数器设置为-55时的值,如果计数器到达0 之前,门电路未关闭,则温度寄存器的值将增加,这表示当前温度高于-55。同时,计数器复位在当前温度值上,电路对振
44、荡器的温度系数进行补偿,计数器重新开始计数直到回零。如果门电路仍然未关闭,则重复以上过程。温度表示值为9bit,高位为符号位,其结构如下:对 DS1820的使用,多采用单片机实现数据采集。处理时,将 DS1820信号线与单片机一位口线相连,单片机可挂接多片DS1820,从而实现多点温度检测系统。系统对 DS1820的操作以 ROM 命令和存储器命令形式出现。(1)ROM 命令代码及其含义名师资料总结-精品资料欢迎下载-名师精心整理-第 22 页,共 43 页 -基于单片机的温度采集系统设计报告第23 页 共 54 页?READROM命令代码 33H :如果只有一片DS1820,可用此命令读出其
45、序列号,若在线 DS1820多于一个,将发生冲突。?MATCHROM命令代码 55H :多个 DS1820在线时,可用此命令匹配一个给定序列号的 DS1820,此后的命令就针对该DS1820。?SKIPROM 命令代码 CCH :此命令执行后的存储器操作将针对在线的所有 DS1820。?SEARCHRDH命令代码 F0H :用以读出在线的DS1820的序列号。?ALARMSEARCH命令代码 ECH :当温度值高于TH或低于 TL 中的数值时,此命令可以读出报警的DS1820。(2)存储器操作命令代码及其含义?WRITESCRATCHPAD命令代码 4EH :写两个字节的数据到温度寄存器。?R
46、EADSCRATCHPAD命令代码 BEH:读取温度寄存器的温度值。?COPYSCRATCHPAD命令代码 48H :将温度寄存器的数值拷贝到EERAM中,保证温度值不丢失。?CONVERT命令代码 44H :启动在线 DS1280做温度 A/D转换。?RECALL EE命令代码 B8H :将 EERAM 中的数值拷贝到温度寄存器中。?READPOWERSUPPLY命令代码 B4H :在本命令送到 DS1280之后的每一个读数据间隙,指出电源模式:“0”为寄生电源;“1”为外部电源四、DS18B20 的使用方法由于 DS18B20 采用的是 1Wire 总线协议方式,即在一根数据线实现数据的双
47、向传输,而对 AT89S51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20 芯片的访问。由于 DS18B20 是在一根 I/O 线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。DS18B20 的复位
48、时序名师资料总结-精品资料欢迎下载-名师精心整理-第 23 页,共 43 页 -基于单片机的温度采集系统设计报告第24 页 共 54 页DS18B20 的读时序对于 DS18B20的读时序分为读0 时序和读 1 时序两个过程。对于DS18B20的读时隙是从主机把单总线拉低之后,在15 秒之内就得释放单总线,以让DS18B20 把数据传输到单总线上。DS18B20 在完成一个读时序过程,至少需要 60us才能完成。DS18B20 的写时序对于 DS18B20 的写时序仍然分为写0时序和写 1时序两个过程。对于 DS18B20写 0 时序和写 1 时序的要求不同,当要写0 时序时,单总线要被拉低至
49、少60us,保证 DS18B20 能够在 15us 到 45us 之间能够正确地采样IO 总线上的“0”电平,当要写 1 时序时,单总线被拉低之后,在15us 之内就得释放单总线。X25045看门狗芯片在微机智能测控系统的设计中,断电数据保存功能、看门狗功能、上电掉电复位功能、电源电压监控功能等对系统是非常重要的。美国Xicro 公司生产的名师资料总结-精品资料欢迎下载-名师精心整理-第 24 页,共 43 页 -基于单片机的温度采集系统设计报告第25 页 共 54 页X25045 芯片集上述功能于一身,这种组合大大简化了硬件设计,提高了系统的可靠性,减少了对印制电路板的空间要求,降低了成本和
50、系统功耗。X25045 芯片的引脚排列如图277 所示。图 277 看门狗芯片 X25045引脚图CS(脚)为片选输入端,CS电平变化将复位看门狗定时器。SO(脚)为串行输出端,数据由此脚输出,串行时钟SCK(脚)的下降沿同步输出数据。WP(脚)为写保护输入端,当WP 为低电平时,X25045的非易失性写操作被禁止,其它功能正常,WP 为高电平时所有功能正常。SI(脚)为串行输入端,所有写入的数据、操作码、字节地址在此脚上输入,数据由串行时钟的上升沿锁存。RESET(脚)为复位输出端,高电平有效,漏极开路输出方式。用于电源检测和看门狗定时器。Vss(脚)为接地端。Vcc(脚)为电源正端,X25