测控系统综合训练课程设计-基于at89c52单片机的温度测量(编辑修改稿)内容摘要:

整状态进入的控制功能。 温度传感器的选择 DS18B20 的简单介绍 DS18B20 温度传感器是一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现 9~12 位的数字值读数方式。 DS18B20 的性能特点如下: ① 独特的单线接口仅需要一个端口引脚进行通信; ② 多个 DS18B20 可以并联在惟一 的三线上,实现多点组网功能; ③ 无须外部器件; ④ 可通过数据线供电,电压范围为 ~; ⑤ 零待机功耗; ⑥ 温度以9或12位数字; ⑦ 用户可定义报警设置; ⑧ 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件; ⑨ 负电压特性,电极接反时,温度计不会因发热而烧毁, 只是 不能正常工作。 DS18B20 的外形和内部结构 DS18B20 内部结构主要由四部分组成: 64 位光刻 ROM、温度传感器、非挥发的温度报警触发器 TH 和 TL、配置 寄存器。 DS18B20 的管脚排列、各种封装形式如图 所示, DQ 为 数据输入 /输出引脚。 开漏单总线接口引脚。 当被用着在寄生电源下,也可以向器件提供电源 ; GND 为 地信号 ;VDD 为 可选择的 VDD 引脚。 当工作于寄生电源时,此引脚必须接地。 综合实训 论文 第 8 页 共 23 页 8 图 外部封装形式 图 DS18B20 的电路 DS18B20 采用 3 脚 PR- 35封装或 8 脚 SOIC 封装,其内部结构框图如图 34所示。 图 34 DS18B20 内部结构 64位 ROM 的结构开始 8 位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后 8位是前面 56 位的 CRC 检验码,这也是多个 DS18B20 可以采用一线进行通信的原因。 温度报警触发器 TH 和 TL,可通过软件写入户报警上下限。 DS18B20 温度传感器的内部存储器还包括一个高速暂存 RAM 和一个非易失性的可电擦除的 EERAM。 高速暂存 RAM 的结构为 9字节的存储器,结构如图 38所示。 头 2 个字节包含测得的温度信息,第 3和第 4字节 TH 和 TL 的拷贝,是易失的,每次上电复位时被刷新。 第 5个 字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。 I/O C 64 位 ROM 和 单 线 接 口 高速缓存 存储器与控制逻辑 温度传感器 高温触发器 TH 低温触发器 TL 配置寄存器 8 位 CRC 发生器 Vdd 综合实训 论文 第 9 页 共 23 页 9 DS18B20 工作时寄存器中的分辨率转换为相应精度的温度数值。 该字节各位的定义如图38 所示。 低 5 位一直为 1, TM 是工作模式位,用于设置 DS18B20 在工作模式还是在测试模式, DS18B20 出厂时该位被设置为 0,用户要去改动, R1和 R0 决定温度转换的精度位数,来设置分辨率。 DS18B20 的测温原理 DS18B20 的 温度值的位数因分辨率不同而不同,温度转换时的 最大 延时为 750ms。 DS18B20 测温原理如图 所示。 图中低温度系 数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器 1。 高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器 2 的脉冲输入。 计数器 1 和温度寄存器被预置在- 55℃ 所对应的一个基数值。 计数器 1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器 1 的预置值减到 0 时,温度寄存器的值将加 1,计数器 1的预置将重新被装入,计数器 1 重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器 2计数到 0 时,停止温度寄存器值的 累加,此时温度寄存器中的数值即为所测温度。 图中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器 1 的预置值。 图 DS18B20 测温原理 综合实训 论文 第 10 页 共 23 页 10 DS18B2 的外部电路图 根据设计要求,传感器的硬件电路图如图 所示。 图 DS18B20 外部电路图 显示及报警模块选择 在本设计中温度测量范围为 0℃~+ 125℃,精度为177。 ℃,因此只需要液晶SMC1602A就可以完成相关的显示功能,报警器可以用有源蜂鸣器配合三极管来代替,本设计则直接使用 LED发光二极管带代替。 4 硬件电路的总体设计 温度计电路设计原理图如图 ,控制器使用单片机 AT89C2052,温度计传感器使用 DS18B20,用液晶实现温度显示。 本温度计大体分三个工作过程。 首先,由 DS18820温度传感器芯片测量当前的温度,并将结果送入单片机。 然后,通过 89C2052单片机芯片对送来的测量温度读数进行计算和转换,井将此结果送入液晶显示模块。 最后, SMC1602A芯片将送来的值显示于显示屏上。 由图 ,本电路主要由 DSl8820温度传感器芯片、 SMCl602A液晶显示模块芯片和 89C2052单片机芯片组成。 其中, DSI8B20温度传感器芯片采用 “ 一线制 ”与单片机相连,它独立地完成温度测量以及将温度测量结果送到单片机的工作。 综合实训 论文 第 11 页 共 23 页 11 图 温度计电路设计仿真图 5 软件 总体设计 系统程序主要包括主程序、读出温度子程序、温度转换命令子程序、计算温度子程序、显示数据刷新子程序。 综合实训 论文 第 12 页 共 23 页 12 主程序的主要功能是负责温度的实时显示、读出 并处理 DS18B20 的测量温度值。 温度测量每 1s 一次。 图 DS18B20 温度计主程序流程图 读出温度子程序的主要功能是读出 RAM 中的 9字节。 在读出时须进行 CRC 校验,校验有错时不进行温度数据的改写。 图 读出温度子程序流程图 综合实训 论文 第 13 页 共 23 页 13 计算温度子程序。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。