1 引 言
大气温度的测量具有重要意义, 一般是采用各种温度计进行人工测量, 并定时记录测量结果, 这种方法费时费工, 十分不便。本文提出了一种非常小巧的大气温度测量和记录装置, 能对范围为- 55 ℃ ~ + 125 ℃ 的温度进行定时自动测量, 同时记录测量结果, 精度最高可达0. 0625℃ 。
2 系统原理
系统结构如图1所示。系统主要由AT89C2051单片机和外围电路构成。其基本思想是由串行时钟芯片DS1306 提供时间基准, 由温度传感器DS18B20进行温度测量, 温度数据存储在DS2433中。AT89C2051单片机负责整个系统的协调控制。
AT89C2051是一款低电压, 高性能的CMOS 8位单片机, 片内含2k bytes的可反复擦写的只读F lash程序存储器和128 bytes的随机存取数据存储器( RAM) , 器件采用ATMEL公司的高密度、非易失性存储技术生产, 兼容标准MCS- 51指令系统, 内置通用8位中央处理器和Flash存储单元, 功能强大的AT89C2051单片机可提供高性价比的应用。
AT89C2051是一个功能强大的单片机, 但它只有20个引脚, 15个双向输入/输出( I /O )端口, 其中P1是一个完整的8位双向I/O 口, 两个外中断口, 两个16位可编程定时计数器, 两个全双向串行通信口,一个模拟比较放大器。同时AT89C2051 的时钟频率可以为零, 即具备可用软件设置的睡眠省电功能,系统的唤醒方式有RAM、定时/计数器、串行口和外中断口, 系统唤醒后即进入继续工作状态。省电模式中, 片内RAM 将被冻结, 时钟停止振荡, 所有功能停止工作, 直至系统被硬件复位方可继续运行。
系统结构图
图1 系统结构图。
DS18B20是集成数字温度计 , 温度测量范围- 55℃ ~ + 125℃ , 通过编程可实现0. 5℃ 、0. 25 ℃ 、0. 125 ℃ 、0. 0625℃ 四种不同的分辨率。其最大特点是通过一条数据线就可实现与单片机的数字通讯。
测量得到的温度数据长度为2个字节。DS18B20数字温度计是DALLAS公司生产的1 -W ire, 即单总线器件, 具有线路简单, 体积小的特点。因此用它来组成一个测温系统, 具有线路简单, 在一根通信线上可以挂很多这样的数字温度计, 十分方便。
DS18B20的特点:
( 1)只要求一个端口即可实现通信。
( 2)在DS18B20中的每个器件上都有独一无二的序列号。
( 3)实际应用中不需要外部任何元器件即可实现测温。
( 4)测量温度范围在- 55 ℃ 到+ 125 ℃ 之间。
( 5)数字温度计的分辨率可以从9 位到12位选择。
( 6)内部有温度上、下限告警设置。