基于DS18B20数字温度测量模块设计
1. 设计目的
(1) 掌握DS18B20数字温度传感器的工作原理及使用方法 (2) 掌握对DS18B20转换数据进行处理的方法 (3) 学习用数码管显示复杂数据的方法 2. 设计任务
用AT89S52控制DS18B20,读取数据,并对DS18B20转换后的数据进行处理,最后在数码管上显示DS18B20测出的温度。要求使用6位数码管显示,最高位为符号位,如果温度值为正,不显示,如果温度为负,则显示负号;第2—4位显示温度值的整数部分,并在第4位数据上显示小数点;第5位显示一位小数,最低位显示摄氏度符号“C”。 (1)基本要求
a.用AT89C51控制DS18B20,读取数据
b.对DS18B20转换后的数据进行处理,转换成实际温度值 c. 将符号位,整数值和小数值分别存放在特定的存储单元中.
(2)进阶要求
在数码管上显示DS18B20测出的温度,只要求显示出温度值的整数部分及符号位。
(3)高级要求
a.使用6位数码管显示测得的温度
b.最高位为符号位,如果温度值为正,不显示,如果温度为负,则显示负号 c.第2—4位显示温度值的整数部分,并在第4位数据上显示小数点 d.第5位显示一位小数 e.最低位显示摄氏度符号“C”
3. DS18B20数字温度传感器概述
DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
DS18B20产品的特点:
a.只要求一个端口即可实现通信。
b.在DS18B20中的每个器件上都有独一无二的序列号。 c.实际应用中不需要外部任何元器件即可实现测温。 d.测量温度范围在-55。C到+125。C之间。
e.数字温度计的分辨率用户可以从9位到12位选择。 f.内部有温度上、下限告警设置。
TO-92封装的DS18B20的引脚排列见图4-2,其引脚功能描述见表4-1。
图4-2 DS18B20引脚结构图(底视图)
表4-1 DS18B20详细引脚功能描述
序号 1 2 3
名称 GND DQ VDD
引脚功能描述 地信号
数据输入/输出引脚。。 可选择的VDD引脚。
DS18B20采用严格的单总线通信协议,以保证数据的完整性。该协议定义了几种信号类型:复位脉冲、应答脉冲、写0、写1、读0和读1。除了应答脉冲所有这些信号都由主机发出同步信号。总线上传输的所有数据和命令都是以字节的低位在前。
① 初始化序列:复位脉冲和应答脉冲
在初始化过程中,主机通过拉低单总线至少480μs,以产生复位脉冲(TX)。然后主机释放总线并进入接收(RX)模式。当总线被释放后,5kΩ的上拉电阻将单总线拉高。DS18B20检测到这个上升沿后,延时15μs~60μs,通过拉低总线60μs~240μs产生应答脉冲。初始化波形如图4-5所示。
图4-5 初始化脉冲
② 读和写时序
在写时序期间,主机向DS18B20写入数据;而在读时序期间,主机读入来自DS18B20的数据。在每一个时序,总线只能传输一位数据。读/写时序如图3-6所示。 ? 写时序
存在两种写时序:“写1”和“写0”。主机在写1时序向DS18B20写入逻辑1,而在写0时序向DS18B20写入逻辑0。所有写时序至少需要60μs,且在两次写时序之间至少需要1μs的恢复时间。两种写时序均以主机拉低总线开始。
产生写1时序:主机拉低总线后,必须在15μs内释放总线,然后由上拉电阻将总线拉至高电平。产生写0时序:主机拉低总线后,必须在整个时序期间保持低电平(至少60μs)。
在写时序开始后的15μs~60μs期间,DS18B20采样总线的状态。如果总线为高电平,则逻辑1被写入DS18B20;如果总线为低电平,则逻辑0被写
入DS18B20。 ? 读时序
DS18B20只能在主机发出读时序时才能向主机传送数据。所以主机在发出读数据命令后,必须马上产生读时序,以便DS18B20能够传送数据。所有读时序至少60μs,且在两次独立的读时序之间至少需要1μs的恢复时间。
每次读时序由主机发起,拉低总线至少1μs。在主机发起读时序之后,DS18B20开始在总线上传送1或0。若DS18B20发送1,则保持总线为高电平;若发送0,则拉低总线。当传送0时,DS18B20在该时序结束时释放总线,再由上拉电阻将总线拉回空闲高电平状态。DS18B20发出的数据在读时序下降沿起始后的15μs内有效,因此主机必须在读时序开始后的15μs内释放总线,并且采样总线状态。
图4-6 DS18B20读/写时序图
DS18B20 在使用时,一般都采用单片机来实现数据采集。只需将DS18B20 信号线与单片机1 位I/O线相连,且单片机的1 位I/O 线可挂接多个DS18B20 ,就可实现单点或多点温度检测。
4.设计原理图
5.程序流程图