DS18B20构成的多点温度测量系统的设计
发布时间:2008/5/27 0:00:00 访问次数:667
    
     四川大学 蒋鸿宇 王勇 植涌
     引 言
     在传统的温度测量系统设计中,往往采用模拟技术进行设计,这样就不可避免地遇到诸如引线误差补偿、多点测量中的切换误差和信号调理电路的误差等问题;而其中某一环节处理不当,就可能造成整个系统性能的下降。随着现代科学技术的飞速发展,特别是大规模集成电路设计技术的发展,微型化、集成化、数字化正成为传感器发展的一个重要方向「1」。美国dallas半导体公司推出的数字温度传感器dsl8820,具有独特的单总线接口,仅需要占用一个通用i/o端口即可完成与微处理器的通信;在-10~+85℃温度范围内具有±0.5℃精度;用户可编程设定9~12位的分辨率。以上特性使得dsl8820非常适用于构建高精度、多点温度测量系统。
     1 dsl8b20简介
     1.1 dsl8b20的特点
     dsl8820是美国dallas半导体公司继dsl820之后最新推出的一种改进型智能数字温度传感器[2]。与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过编程实现9~12位的数字值读数方式;可以分别在93.75 ms和750 ms内完成9位和12位的数字量;从dsl8820读出信息或写入dsl8820信息仅需要1根口线(单线接口);温度变换功率来源于数据总线,总线身也可以向所挂接的dsl8820供电,而无需额外电源。使用dsl8820可使系统结构更趋简单,可靠性更高。dsl8b20在测温精度、转换时间、传输距离、分辨率等方面较dsl820有了很大的改进。
     1.2 dsl8b20内部结构及工作原理
    
     dsl8b20的内部结构「3」如图1所示,主要包括寄生电源电路、64位只读存储器(rom)和单线接口、存储器和控制逻辑、存放中间数据的高速暂存存储器、温度传感器、报警上限寄存器th、报警下限寄存器tl、配置寄存器和8位crc(循环冗余校验码)发生器。
     dsl8b20的核心是其数字温度传感器,精度可以通过用户编程配置为9、10、11和12位,其分别对应于o.5℃、o.25℃、o.125℃和o.062 5℃,可以满足各种不同的分辨率要求。开始一次温度转换时,微处理器需要向dsl8b20发出convert t指令。转换完成之后,该温度数据存放在高速暂存存储器的温度寄存器中,占用2字节,并且dsl8b20返回到空闲状态。当dsl8b20采用外部供电方式时,主机可以在发送温度转换指令后发起一次读时隙。若此时该dsl8820已经完成温度转换,它将会返回"1",否则返回"o"。
     2 温度测量系统设计
     由dsl8b20和美国microchip公司推出的pic单片机picl8f8620以及相关外围电路组成的高精度、多点温度测量系统的结构框图如图2所示。系统采用6片dsl8820构成小型温度传感器网络,通过单线连接方式连接至微处理器的通用i/o端口rbo。其中dsl8b20的分辨率为11位模式,即0.125℃。微处理器通过单线协议与温度传感器网络实现通信。微处理器获得温度信息后,通过特定的算法,将处理后的温度信息通过usb口或rs485接口传送至上位机。
    
     2.1 dsl8820的自动搜索算法「4」
     由于系统中使用了多片dsl8b20构成温度传感器网络,因此,如何准确、有效地对每一温度传感器进行寻址成为该系统设计的一个核心问题。结合dsl8b20的实际特点和系统的需求,提出如下解决方案:首先利用dsl8b20的内部报警上限寄存器(如图1所示,以下简称"th寄存器")存放温度传感器的编号,并将其编号贴在温度传感器表面。由于th寄存器具有掉电不丢失数据功能,因此,便把每片dsl8b20的唯一64位注册码及其编号一一对应起来。这一过程需要对dsl8b20进行单独编程。然后,将确定好编号的温度传感器接入单线网络,利用dsl8b20特有的单线网络自动搜索功能,即可搜寻到每片dsl8b20的注册码,再利用该注册码和相应的rom操作指令,即可从每片dsl8b20的th寄存器中读出相应的设定编号,实现每片dsl8820的寻址功能。下面重点介绍一下该自动搜索功能。
     每片dsl8b20有唯一的64位注册码,存储在只读存储器(rom)中,其结构如下:
    
     其中低8位是产品的工厂代码(dsl8b20为28h),接着是每个器件的唯一序号,共48位,最高8位是前56位的循环冗余校验码。这就准许总线主机对总线上特定的dsl8b20进行寻址。只有与64位注册码严格相符的dsl8b20,才能对后续的操作作出反应。所有与64位注 册码不符的dsl8b20将等待复位脉冲。
     搜索算法首先通过复位和在线应答脉冲时隙将单线总线上的所有dsl8b20复位。成功地执行该操作后
    
     四川大学 蒋鸿宇 王勇 植涌
     引 言
     在传统的温度测量系统设计中,往往采用模拟技术进行设计,这样就不可避免地遇到诸如引线误差补偿、多点测量中的切换误差和信号调理电路的误差等问题;而其中某一环节处理不当,就可能造成整个系统性能的下降。随着现代科学技术的飞速发展,特别是大规模集成电路设计技术的发展,微型化、集成化、数字化正成为传感器发展的一个重要方向「1」。美国dallas半导体公司推出的数字温度传感器dsl8820,具有独特的单总线接口,仅需要占用一个通用i/o端口即可完成与微处理器的通信;在-10~+85℃温度范围内具有±0.5℃精度;用户可编程设定9~12位的分辨率。以上特性使得dsl8820非常适用于构建高精度、多点温度测量系统。
     1 dsl8b20简介
     1.1 dsl8b20的特点
     dsl8820是美国dallas半导体公司继dsl820之后最新推出的一种改进型智能数字温度传感器[2]。与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过编程实现9~12位的数字值读数方式;可以分别在93.75 ms和750 ms内完成9位和12位的数字量;从dsl8820读出信息或写入dsl8820信息仅需要1根口线(单线接口);温度变换功率来源于数据总线,总线身也可以向所挂接的dsl8820供电,而无需额外电源。使用dsl8820可使系统结构更趋简单,可靠性更高。dsl8b20在测温精度、转换时间、传输距离、分辨率等方面较dsl820有了很大的改进。
     1.2 dsl8b20内部结构及工作原理
    
     dsl8b20的内部结构「3」如图1所示,主要包括寄生电源电路、64位只读存储器(rom)和单线接口、存储器和控制逻辑、存放中间数据的高速暂存存储器、温度传感器、报警上限寄存器th、报警下限寄存器tl、配置寄存器和8位crc(循环冗余校验码)发生器。
     dsl8b20的核心是其数字温度传感器,精度可以通过用户编程配置为9、10、11和12位,其分别对应于o.5℃、o.25℃、o.125℃和o.062 5℃,可以满足各种不同的分辨率要求。开始一次温度转换时,微处理器需要向dsl8b20发出convert t指令。转换完成之后,该温度数据存放在高速暂存存储器的温度寄存器中,占用2字节,并且dsl8b20返回到空闲状态。当dsl8b20采用外部供电方式时,主机可以在发送温度转换指令后发起一次读时隙。若此时该dsl8820已经完成温度转换,它将会返回"1",否则返回"o"。
     2 温度测量系统设计
     由dsl8b20和美国microchip公司推出的pic单片机picl8f8620以及相关外围电路组成的高精度、多点温度测量系统的结构框图如图2所示。系统采用6片dsl8820构成小型温度传感器网络,通过单线连接方式连接至微处理器的通用i/o端口rbo。其中dsl8b20的分辨率为11位模式,即0.125℃。微处理器通过单线协议与温度传感器网络实现通信。微处理器获得温度信息后,通过特定的算法,将处理后的温度信息通过usb口或rs485接口传送至上位机。
    
     2.1 dsl8820的自动搜索算法「4」
     由于系统中使用了多片dsl8b20构成温度传感器网络,因此,如何准确、有效地对每一温度传感器进行寻址成为该系统设计的一个核心问题。结合dsl8b20的实际特点和系统的需求,提出如下解决方案:首先利用dsl8b20的内部报警上限寄存器(如图1所示,以下简称"th寄存器")存放温度传感器的编号,并将其编号贴在温度传感器表面。由于th寄存器具有掉电不丢失数据功能,因此,便把每片dsl8b20的唯一64位注册码及其编号一一对应起来。这一过程需要对dsl8b20进行单独编程。然后,将确定好编号的温度传感器接入单线网络,利用dsl8b20特有的单线网络自动搜索功能,即可搜寻到每片dsl8b20的注册码,再利用该注册码和相应的rom操作指令,即可从每片dsl8b20的th寄存器中读出相应的设定编号,实现每片dsl8820的寻址功能。下面重点介绍一下该自动搜索功能。
     每片dsl8b20有唯一的64位注册码,存储在只读存储器(rom)中,其结构如下:
    
     其中低8位是产品的工厂代码(dsl8b20为28h),接着是每个器件的唯一序号,共48位,最高8位是前56位的循环冗余校验码。这就准许总线主机对总线上特定的dsl8b20进行寻址。只有与64位注册码严格相符的dsl8b20,才能对后续的操作作出反应。所有与64位注 册码不符的dsl8b20将等待复位脉冲。
     搜索算法首先通过复位和在线应答脉冲时隙将单线总线上的所有dsl8b20复位。成功地执行该操作后
上一篇:液晶显示器与模块应用须知