当前位置:首页 > 单片机 > 单片机
[导读]文章介绍了新型单总线结构温度传感器DS18B20的结构特征及控制方法、并以此为传感器,以89C2051单片机为构成的温度测量装置的电路组成、原理、程序设计。该装置适应于人民日常生活、工业生产和科学研究领域对温度测量的需要。文章中介绍的温度测量装置具有推广应用价值。

 

作者Email: jsmo739@yeah.net

一、前言

温度是一种最基本的环境参数,人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义。测量温度的关键是温度传感器,温度传感器的发展经历了三个发展阶段:①传统的分立式温度传感器,②模拟集成温度传感器,③智能集成温度传感器。目前,国际上新型温度传感器正从模拟式向数字式,从集成化向智能化、网络化的方向飞速发展。文章将介绍智能集成温度传感器DS18B20的结构特征及控制方法,并对以此传感器,89C2051单片机为控制器构成的温度测量装置的工作原理及程序设计作了详细的介绍。该装置适用于人民的日常生活和工、农业生产用于温度测量。

二、DS18B20单线数字温度传感器

由DALLAS半导体公司生产的DS18B20型单线智能温度传感器,属于新一代适配微处理器的智能温度传感器,可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。它具有体积小,接口方便,传输距离远等特点。

1、    DS18B20性能特点

DS18B20的性能特点:①采用单总线专用技术,既可通过串行口线,也可通过其它I/O口线与微机接口,无须经过其它变换电路,直接输出被测温度值(9位二进制数,含符号位),②测温范围为-55℃-+125℃,测量分辨率为0.0625℃,③内含64位经过激光修正的只读存储器ROM,④适配各种单片机或系统机,⑤用户可分别设定各路温度的上、下限,⑥内含寄生电源。

2、    DS18B20内部结构

DS18B20内部结构主要由四部分组成:64位光刻ROM,温度传感器,非挥发的温度报警触发器TH和TL,高速暂存器。DS18B20的管脚排列如图1所示。

64位光刻ROM是出厂前被光刻好的,它可以看作是该DS18B20的地址序列号。不同的器件地址序列号不同。 

图1 DS18B20引脚分布图

 

8位产品系列号

48位产品序号

8CRC编码

   DS18B20高速暂存器共9个存存单元,如表所示:

序号

寄存器名称

   

序号

寄存器名称

   

0

温度低字节

16位补码形式存放

45

保留字节12

 

1

温度高字节

6

计数器余值

 

2

TH/用户字节1

存放温度上限

7

计数器/

 

3

HL/用户字节2

存放温度下限

8

CRC

 

   12位转化为例说明温度高低字节存放形式及计算:12位转化后得到的12位数据,存储在18B20的两个高低两个8位的RAM中,二进制中的前面5位是符号位。如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625才能得到实际温度。

8

S

S

S

S

S

26

25

24

8

23

22

21

20

2-1

2-2

2-3

2-4

1、DS18B20控制方法

在硬件上,DS18B20与单片机的连接有两种方法,一种是Vcc接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDDGND接地,I/O接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线要接5KΩ左右的上拉电阻。

DS18B20有六条控制命令,如表所示:

   

                

温度转换

44H

启动DS18B20进行温度转换

读暂存器

BEH

读暂存器9个字节内容

写暂存器

4EH

将数据写入暂存器的THTL字节

复制暂存器

48H

把暂存器的THTL字节写到E2RAM

重新调E2RAM

B8H

E2RAM中的THTL字节写到暂存器THTL字节

读电源供电方式

B4H

启动DS18B20发送电源供电方式的信号给主CPU

CPUDS18B20的访问流程是:先对DS18B20初始化,再进行ROM操作命令,最后才能对存储器操作,数据操作。DS18B20每一步操作都要遵循严格的工作时序和通信协议。如主机控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,须经三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。

三、基于DS18B20的温度测量装置

1、系统组成

DS18B20构成的智能温度测量装置由三部分组成:DS18B20温度传感器、89C2051、显示模块。产品的主要技术指标:①测量范围:-55℃-+125℃,②测量精度:0.5℃,③反应时间≤500ms。

2、  工作原理

基于DS18B20的温度测量装置电图如图2所示:温度传感器DS18B20将被测环境温度转化成带符号的数字信号(以十六位补码形式,占两个字节),传感器可置于离装置150米以内的任何地方,输出脚I/O直接与单片机的P1.1相连,R1为上拉电阻,传感器采用外部电源供电。89C2051是整个装置的控制核心,89C2051内带1K字节的FlashROM,用户程序存放在这里。显示器模块由四位一体的共阳数码管和49012组成。系统程序分传感器控制程序和显示器程序两部分,传感器控制程序是按照DS18B20的通信协议编制。系统的工作是在程序控制下,完成对传感器的读写和对温度的显示。

1、 程序设计

根据DS18B20的通信协议,按图2的硬件结构。下面是系统的主要程序。

系统主程序********************

ORG  0100H

I/O  BIT  P3.4 

STARTLCALL  RST18B20      ;调DS18B20初始化子程序

        MOV A#OCCH         ;写CCHDS18B20,以便跳过ROM匹配

        LCALL   WIDS18B20    WIDS18B20是写18B20子程序

        JNB  F1 START       ;若DS18B20不存在则从新开始

        MOV  A#44H         ;发温度转换命令

        LCALL  WIDS18B20    

        LCALL  DSPLAY        ;调显示子程序

        LCALL  RST18B20

        MOV  A#0BEH        ;发读温度命令

        LCALL  WIDS18B20

        LCALL  RDDS18B20     RDDS18B20是读子程序

        LCALL  ZWDS18B20     ZWDS18B20是温度计算子程序

        LCALL  DSPLAY

        LJMP  START

***********部分子程序************

DS18B20初始化子程序***********

RST18B20 SETB    I/O        
         CLR    I/O
         MOV    R0,#0FAH  
;延时500微秒
 LP1
DJNZ    R0,LP1   
         SETB    I/O        
;释放总线
         MOV    R0,#15H    
;在63微秒内检测是否出现应答信号    
 LP2
JNB    I/O,LP3
         DJNZ    R0,LP2           
       CLR    F1                
;清标志位,表示DS1820不存在
         LJMP    LP5

 LP3SETB  F1           ;标专置1,表示DS18B20存在

 MOV    R0,#0FAH    ;延时500微秒
LP4
DJNZ    R0,LP4       
LP5
SETB    I/O
        RET

18B20读子程序**********

RDDS18B20MOV    R2,#8

LOOPCLR    C
       SETB    I/Q
       NOP
       CLR    I/Q
       NOP
        SETB    I/Q
       MOV    R3,#7
       DJNZ    R3,$
       MOV    C,I/Q
       MOV    R3,#23
       DJNZ    R3,$
       RRC    A
       DJNZ    R2,LOOP

       RET

18B20写子程序************

WIDS18B20 MOV    R2,#8
               CLR    C
        WI
CLR    DQ
              MOV    R3,#6
              DJNZ    R3,$
              RRC    A
              MOV    DQ,C
              MOV    R3,#23
              DJNZ    R3,$
              SETB    DQ
              NOP
              DJNZ    R2,WR1
              SETB    DQ
              RET

18B20显示子程序************

DSPLAY----------

18B20温度计算子程序************          

ZWDS18B20----------           

END

结束语

数字单总线温度传感器是目前最新的测温器件,它集温度测量,A/D转换于一体,具有单总线结构,数字量输出,直接与微机接口等优点。既可用它组成单路温度测量装置,也可用它组成多路温度测量装置,文章介绍的单路温度测量装置已研制成产品,产品经测试在-10℃-70℃间测得误差为0.25℃,80℃≤T≤105℃时误差为0.5℃,当T>105℃误差为增大到1℃左右。用单总线温度传感器和单片机构成的测温装置具有推广价值。

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

随着手工酿造的普及和复杂程度的不断提高,许多酿酒师——尤其是小规模或独立的酿酒师——仍然依靠手工方法来记录和跟踪关键数据,如温度、pH值、体积和比重。这些读数通常使用手动仪器,记录在纸上或分散在电子表格和文档中,没有集中...

关键字: 触摸屏 物联网 DS18B20 传感器

在工业生产、科学研究以及各类温度测量场景中,热电偶作为一种常用的测温元件,发挥着重要作用。然而,其测量精度往往受到各种干扰因素的影响,解决热电偶的抗干扰问题成为确保温度测量准确性和可靠性的关键。

关键字: 热电偶 抗干扰 温度测量

热电偶(thermocouple)作为工业接触式温度测量的核心元件,以其直接的温度测量能力及将温度信号转换为热电动势信号的特性,广泛应用于各种工业测温场合。这种转换过程通过电气仪表(二次仪表)实现,将热电势信号准确转换为...

关键字: 热电偶 温度测量 工业自动化

电阻温度检测器(RTD)温度测量系统是否有一致的误差?高精度的RTD温度测量系统可以设计而不需要校准吗?本文介绍了一种高精度RTD温度测量系统,该系统采用误差补偿的方法,在不需要校准的情况下,在-25℃到+140℃的范围...

关键字: RTD 温度测量 PT100

一般来说,励磁电流越大,温度测量的灵敏度就越高,从而提高了温度测量的性能。然而,较大的励磁电流并不总是更好的。一方面,激发电流在RTD上产生的热能与电流的平方成正比,电流越大,自热效应越大,这可能对温度测量产生重大影响。...

关键字: RTD 温度测量 激励源

在计算系统的理论性能后,有必要通过测量验证系统的实际性能。对于温度测量系统,最重要的性能指标是测量温度值与真实温度值之间的误差。因此,为了测量这一规格,需要一个精确的、大范围的温度源。偶然校准具有丰富的温度校准经验,其产...

关键字: RTD 温度测量 误差分析

接上一篇,尽管14条RTD测量通道的温度测量误差曲线具有一致的趋势,但由于产量的变化,它们的斜率和截流量在一定程度上有所不同。为了对这一过程产生的所有RTD测量通道进行误差补偿,需要找到14条温度测量误差曲线所包围的区域...

关键字: RTD 温度测量 误差校准

超声波流量计作为一种常用的流量测量装置,广泛应用于各个行业,可以实现非侵入性、高精度的流量测量。不同类型的超声波流量计在原理和测量方法上存在一些区别。本文将深入探讨各类超声波流量计的原理及其与其他类型流量计的区别,并介绍...

关键字: 超声波流量计 测量装置 高精度

随着科技的不断发展,雷达液位计作为一种现代化的高精度液位测量装置,在工业领域得到了广泛的应用。雷达液位计凭借其独特的工作原理和出色的性能,成为液位测量领域的重要工具。本文将介绍雷达液位计的应用原理,并重点探讨其在应用时所...

关键字: 雷达液位计 高精度 测量装置

DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型...

关键字: DS18B20 数字温度传感器
关闭