基于单片机的数字温度计设计

信息科学和微电子技术的飞速发展给控制领域带来了巨大的飞跃,控制技术更加趋向自动化和智能化,为无数的使用者带来了方便。在控制领域里,温度是一个常见的名词,然而它所带来的技术问题和所起的作用却是非同一般的。在控制领域中,对温度的控制有着举足轻重的作用。例如陶瓷的烧烤,只有控制住温度的适度,才能制作出一件完美的艺术品,否则只是一件废品;还有如酿酒的过程,也需要对温度进行控制。可见,在生活的许多方方面面都有着对温度进行感知和控制的需要。

温度是一个十分重要的物理量,对它的测量与控制有十分重要的意义。随着现代工农业技术的发展及人们对生活环境要求的提高,人们也迫切需要检测与控制温度。在人类的生活环境中,温度扮演着极其重要的角色。无论你生活在哪里,从事什么工作,无时无刻不在与温度打着交道。在冶金、钢铁、石化、水泥、玻璃、医药等等行业,可以说几乎80%的工业部门都不得不考虑着温度的因素。温度对于工业如此重要,由此推进了温度传感器的发展。   

测量温度的基本方法是使用温度计直接读取温度。最常见到的测量温度的工具是各种各样的温度计,例如,水银玻璃温度计,酒精温度计,热电偶或热电阻温度计等。它们常常以刻度的形式表示温度的高低,人们必须通过读取刻度值的多少来测量温度。而在传统的模拟信号温度测量系统中,测温电路的电磁环境非常恶劣,各种干扰信号较强,模拟温度信号容易受到干扰而产生测量误差,影响测量精度,不能满足数字化时代的需求。利用单片机和温度传感器构成的电子式智能温度计精度高、抗干扰能力强,可扩展性强、集成方便得到了广泛的应用。而且可以直接测量温度,得到温度的数字值,既简单方便,又直观准确,新型数字温度传感器是温度计设计的最有效方案。

本课题就是一个对温度进行检测,采集和显示的温度检测系统。它以单片机(AT89S51)为主要控制器件,DS18B20为温度传感器,并通过LCD液晶1602直接显示所测温度的新型数字温度计。由于本人所学知识有限,设计过程中难免会出现错误,还请各位老师指正。


第一章  数字温度计的总体方案设计及论证

根据系统设计的功能,本时钟温度系统的设计必须采用单片机软件系统实现,用单片机的自动控制能力来测量、显示温度数值。

初步确定设计系统由单片机主控模块、测温模块、显示模块、报警模块共4个模块组成,电路系统框图如图1.1所示。

图1.1 系统基本方框图

对于单片机的选择,如果用8051系列,由于它没有内部RAM,系统又需要一定的内存存储数据。AT89S51是一个低功耗、高性能CMOS 8位的单片机,片内含8k Bytes ISP的可反复擦写1000次的Flash只读程序存储器,兼容标准MCS-51指令系统及80C51引脚结构,功能强大的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。而AT89S51与AT89C51相比,外型管脚完全相同,AT89C51的HEX程序无须任何转换可直接在AT89S51运行,且AT89S51比AT89C51新增了一些功能,相比较后,在本设计中选用AT89S51更能很好的实现温度计控制功能。

测温电路可以使用热敏电阻之类的器件,利用其感温效应,将被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据处理。但是这种感温电路比较复杂,且采用热敏电阻精度低,重复性、可靠性都比较差。

如果采用温度传感器DS18B20可以减少外部硬件电路,而且可以很容易直接读取被测温度值,进而转换,还可以在高温报警,且成本低、易使用,可以很好的满足设计要求。所以本文采用传感器DS18B20代替传统的测温电路。

温度的显示可以采用LED数码管来显示,LED亮度高、醒目,但是电路复杂,占用资

源多且信息量小。而采用液晶显示器有明显的优点:工作电流比LED小几个数量级,功耗低;尺寸小,厚度约为LED的1/3;字迹清晰、美观、使人舒服;寿命长,使用方便,可得性强。故本设计采用LCD来显示温度。

第二章  数字温度计硬件电路的实现
第一节  复位电路及晶振电路设计

根据方案的设计,系统硬件电路主要由主控单片机AT80S51、温度传感器DS18B20、液晶显示器1602等组成。

影响单片机系统运行稳定性的内部因素包括复位电路和振荡源的稳定性,振荡源的稳定性主要由起振时间、频率稳定度和占空比稳定度决定,起振时间可由电路参数整定,稳定度受振荡器类型、温度和电压等参数影响。

一、复位电路

复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。在本系统中,上电复位采用电平方式开关复位,具体电路如图2.1所示。上电复位采用RC电路,其中电容为10

F,电阻为10K

二、晶振电路

单片机系统里晶振的作用非常大,它结合单片机内部的电路,产生单片机所必须的时钟频率,单片机的一切指令的执行都是建立在这个基础上的,晶振提供的十种频率越高,单片机运行的速度也就越快。单片机的晶振频率应低于40MHZ,本设计中采用的晶振频率为12MHZ,具体电路如2.2所示,在晶振上并联两个30

F电容。


 

第二节  温度传感器设计

一、概述
    DS18B20温度传感器是一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20的性能特点如下:
    ①独特的单线接口仅需要一个端口引脚进行通信;
    ②多个DS18B20可以并联在惟一的三线上,实现多点组网功能;
    ③无须外部器件;
    ④可通过数据线供电,电压范围为3.0~5.5V;
    ⑤零待机功耗;
    ⑥温度以9或12位数字;
    ⑦用户可定义报警设置;
    ⑧报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;
    ⑨负电压特性,电极接反时,温度计不会因发热而烧毁,只是不能正常工作。

二、DS18B20的外形及内部结构

1DS18B20引脚定义及电源工作方式

DS18B20的外形及引脚如图2.3所示。

DS18B20引脚功能的详细描述如表2.1所示。

DS18B20的电源供电方式有两种,一种为寄生电源供电方

式,另一种为外部电源工作方式。其中,在寄生电源供电方式

下,DS18B20从单线信号线上汲取能量:在信号线DQ处于高电

平期间把能量储存在内部电容里,在信号线处于低电平期间消耗

电容上的电能工作,直到高电平到来再给寄生电源(电容)充电。   图2.3 DS18B20的引脚

其具体电路如图2.4。

                                                



 

表2.1  DS18B20详细引脚功能描述图
名称
引脚功能描述
GND
地信号
DQ
数据输入/输出引脚。开漏单总线接口引脚。当被用在寄生电源下,可以向器件提供电源。
VDD
可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。


                                         

图2.4 寄生电源工作方式

DS18B20独特的寄生电源方式有如下三个好处:
     ①进行远距离测温时,无需本地电源;
     ②可在没有常规电源的条件下读取ROM;
     ③电路更简洁,仅用一根I/O口实现测温
     要使DS18B20进行精确的温度转换,I/O线必须保证在温度转换期间提供足够的能量,由于每个DS18B20在温度转换期间工作电流要达到1mA,当几个温度传感器挂在同一根I/O线上进行多点测温时,只靠4.7K上拉电阻就无法提供足够的能量,会造成无法转换温度或温度误差大。
    因此,图2.4的寄生电源电路只适应于单一温度传感器测温情况下使用,不适宜采用电池供电系统中。并且工作电源VCC必须保证在5V,当电源电压下降时,寄生电源能够汲取的能量也降低,会使温度误差变大。
    DS18B20外部电源供电方式如图2.5所示,其工作电源由VDD引脚接入,此时I/O线不需要强上拉,不存在电源电流不足的问题,可以保证转换精度,同时在总线理论上可以挂接任意多个DS18B20传感器,组成多点测温系统。注意:在外部供电的方式下,DS18B20的GND引脚不能悬空,否则不能转换温度,读取的温度总是85℃。

外部电源供电方式是DS18B20最佳的工作方式,工作稳定可靠,抗干扰能力强,而且电路也比较简单,本设计中使用外部电源供电方式。在外接电源方式下,可以充分发挥DS18B20宽

电源电压范围的优点,即使电源电压VCC降到3V时,依然能够保证温度量精度。

图2.5 外部电源工作方式

2、DS18B20内部结构

DS18B20内部结构如图2.6,它主要由四部分组成:64位光刻ROM、温度传感器、存储器、非挥发的温度报警触发器TH和TL。

图2.6 DS18B20内部结构图

(1)光刻ROM

光刻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为符号位,12位转化后得到的12位数据,存储在DS18B20的两个8比特的RAM中。DS18B20温度值格式如二进制表2.2所示,其中,前5位是符号位,如果测得的温度大于0,这5位为0,只要将测得的数值乘以0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于 0.0625即可得到实际温度。

例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。

表2.2 DS18B20温度值格式表

LSB

MSB          (unit=℃)             LSB

S

S

S

S

S

MSB


 

3)、DS18B20存储器

DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器的TH、TL。

配置寄存器
DS18B20配置寄存器各字节意义如表2.3下:

表2.3  DS18B20寄存器中各位内容

BIT7

BIT6

BIT5

BIT4

BIT3

BIT2

BIT1

BIT0

TM

R1

RO

1

1

1

1

1

其中,低五位一直都是"1",TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。其中,R1和R0用来设置分辨率,具体设置如表2.4所示:(DS18B20出厂时被设置为12位)。

表2.4 温度分辨率设置表

RR1

RRO

分辨率

温度最大转换时间

00

00

99位

93.75ms

00

11

110位

187.5ms

11

00

111位

375ms

11

11

112位

750ms


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无限虚空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值