APP下载

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

2010-05-02

科学之友 2010年10期
关键词:数码管温度计温度传感器

龙 吉

(吉林航空工程学校,吉林 吉林 132102)

温度在人们日常生活、工业控制和科学实验中都是个重要的参数,特别是近些年来,随着社会的发展,人们对居住环境的舒适程度要求越来越高,采用温度计可以对室温进行高精度采集,满足人们的需要。本设计中采用AT89C2051单片机作为主控核心、包括测温模块、控制模块、显示模块等组成,电路结构简单典型、成本低、测量精度高。

1 数字温度计的硬件设计

1.1 设计框图

基于AT89C2051的数字温度计硬件框图(如图1所示)。在整个设计过程中,考虑到成本以及制作出的硬件电路大小,采用AT89C2051作为控制核心,简化电路,以数码管显示、报警电路为输出,这样电路既可以做的很小,节约成本,又可以精确显示温度。

图1 数字温度计硬件框图

1.2 AT89C2051单片机

AT89C2051是美国 ATMEL公司生产的低电压、高性能CMOS 8位单片机,双列直插封装为20引脚,比普通8051单片机更加节省空间。片内含2k bytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C2051单片机更多应用到许多高性价比的场合。

1.3 温度传感器

温度传感器在本设计中是关键器件。本设计中采用的是Dallas半导体公司的单总线数字温度传感器DS18B20,它支持单总线接口,与微处理器连接时仅需一条口线即可实现微处理器与DS18B20的双向通讯。测温范围-55~+125 ℃,固有测温分辨率 0.5 ℃。最大特点是支持多点组网功能,目前民用仓库、工厂等测温都采用这种方法,多个DS18B20并联在一条供电和数据传输线上,最多并联8个,可以实现多点测温。工作电源直流3 V~5 V。具有耐磨耐碰,体积小,使用方便等特点,封装形式多样,常见封装类似于小三极管,适用于各种狭小空间设备数字测温和控制领域。

1.4 键盘控制

键盘由独立按键组成,控制单片机复位以及控制温度实时显示等功能。本设计中采用低功耗设计,即温度显示一段时间后关闭数码管显示,直到按键按下后继续显示或者设置显示时间,当在关闭显示的同时,发光二极管发光,表示系统正运行在低功耗状态。

1.5 数字温度计的硬件电路

在实际制作过程中考虑到芯片的体积,使用 AT89C2051单片机采用双列直插封装,与普通AT89C51相比仅为其四分之一大小,温度传感器DS18B20采用TO-92封装,大小与小型三极管封装一致,由于需要对温度精确显示,所以温度精确到0.01 ℃,选用4位数码管显示温度。考虑到低功耗设计,在编程过程中控制数码管显示持续时间,并且可以通过独立按键控制是否显示和修改显示时间。通过对DS18B20进行编程,用万能板焊接成功,可以对温度进行精确测量和显示,成本低,测量精度高。

图2 程序流程图

2 数字温度计的软件设计

本设计中采用AT89C2051作为核心处理器,把经过数字传感器DS18B20现场实时采集的温度数据,存入单片机内部数据存储器,送数码管显示,并检测是否有按键按下,来由单片机控制是否显示。进行温度检测和显示的设计应考虑如下问题:温度实时采集;精确显示温度:采用4位数码管显示当前温度,精确到0.01 ℃;定时器启动,设置显示持续时间;按键处理,判断按键然后显示温度。软件设计主要有:主程序、系统初始化程序、温度采集子程序、显示子程序、键盘查询子程序、按键处理子程序等。具体流程图(如图2所示)。

3 结论

本设计采用 AT89C2051单片机作为主控核心,DS18B20数字单总线温度传感器作为测温器件,通过4位数码管显示温度,并考虑低功耗设计,显示有持续时间。作为数字温度计,具有低功耗、低成本、体积小等优点。

猜你喜欢

数码管温度计温度传感器
气象用温度传感器检定结果的测量不确定度评定与应用
基于HSIC的日光温室温度传感器优化配置策略
知识快餐店 宇宙温度计
物理项目教学设计,用单片机控制四位数码管显示
基于51单片机的分数计数器设计
温度计的来历
自制温度计
Arduino编程
温度传感器DS18B20在温度计设计中的应用
MC9S08FL16单片机数码管静态显示分析