DS18B20数据手册-中文版

合集下载

DS18B20数据手册-中文版-140407

DS18B20数据手册-中文版-140407
DS18B20 的温度输出数据时在摄氏度下校准的;若是在华氏度下应用的话,可以用查表法或 者常规的数据换算。温度数据以一个 16 位标志扩展二进制补码数的形式存储在温度寄存器中(详
DS18B20
见图 2)。符号标志位(S)温度的正负极性:正数则 S=0,负数则 S=1。如果 DS18B20 被定义为 12 位的转换精度,温度寄存器中的所有位都将包含有效数据。若为 11 位转换精度,则 bit 0 为未 定义的。若为 10 位转换精度,则 bit 1 和 bit 0 为未定义的。 若为 9 位转换精度,则 bit 2、bit 1 和 bit 0 为未定义的。表格 1 为在 12 位转换精度下温度输出数据与相对应温度之间的关系表。
管脚定义图
DS18B20
订购信息
零件
温度范围
引脚数-封装
DS18B20
-55℃至+125℃
3 TO-92
DS18B20+
-55℃至+125℃
3 TO-92
DS18B20/T&R
-55℃至+125℃
3 TO-92(2000 片)
DS18B20+T&
-55℃至+125℃
3 TO-92(2000 片)
DS18B20-SL/T
VPU
DQ
GND
VDD
TH
CPP
TL
VDD
说明-温度测量
DS18B20 的核心功能是直接温度-数字测量。其温度转换可由用户自定义为 9、10、11、12 位 精度分别为 0.5℃、0.25℃、0.125℃、0.0625℃分辨率。值得注意的是,上电默认为 12 位转换精 度。DS18B20 上电后工作在低功耗闲置状态下。主设备必须向 DS18B20 发送温度转换命令[44h] 才能开始温度转换。温度转换后,温度转换的值将会保存在暂存存储器的温度寄存器中,并且 DS18B20 将会恢复到闲置状态。如果 DS18B20 是由外部供电,当发送完温度转换命令[44h]后, 主设备可以执行“读数据时序”(请参阅“1-Wire 总线系统”章节),若此时温度转换正在进行 DS18B20 将会响应“0”,若温度转换完成则会响应“1”。如果 DS18B20 是由“寄生电源”供电, 该响应的技术将不能使用,因为在整个温度转换期间,总线必须强制拉高。该总线的“寄生电源” 供电方式将会在“DS18B20 的供电”章节中详细讲解。

DS18B20数据手册-中文版

DS18B20数据手册-中文版

DS18B20数据手册-中文版DS18B20 分辨率可编程概述1-Wire数字温度传感器 DS18B20数字温度传感器提供9-Bit到12-Bit的摄氏温度测量精度和一个用户可编程? 温度转换时间在转换精度为12-Bits时达到的非易失性且具有过温和低温触发报警的报警最大值750ms。

功能。

DS18B20采用的1-Wire通信即仅采用一? 用户自定义非易失性的的温度报警设置。

个数据线(以及地)与微控制器进行通信。

该? 定义了温度报警搜索命令和当温度超过用户传感器的温度检测范围为-55?至+125?,并且自定义的设定值时。

在温度范围超过-10?至85?之外时还具有? 可选择的8-Pin SO (150 mils), 8-PinμSOP,+-0.5?的精度。

此外,DS18B20可以直接由数及3-Pin TO-92封装。

据线供电而不需要外部电源供电。

? 与DS1822程序兼容。

每片DS18B20都有一个独一无二的64位? 应用于温度控制系统,工业系统,民用产品,序列号,所以一个1-Wire总线上可连接多个温度传感器,或者任何温度检测系统中。

DS18B20设备。

因此,在一个分布式的大环境管脚定义图里用一个微控制器控制多个DS18B20是非常简单的。

这些特征使得其在HVAC环境控制,在建筑、设备及机械的温度监控系统,以及温度过程控制系统中有着很大的优势。

特性独特的1-Wire总线接口仅需要一个管脚来通信。

每个设备的内部ROM上都烧写了一个独一无二的64位序列号。

多路采集能力使得分布式温度采集应用更加简单。

无需外围元件。

能够采用数据线供电;供电范围为3.0V至5.5V。

温度可测量范围为:-55?至+125?(-67?至+257?)。

温度范围超过-10?至85?之外时具有+-0.5?的精度。

内部温度采集精度可以由用户自定义为9-Bits至12-Bits。

DS18B20订购信息零件温度范围引脚数-封装顶部标号DS18B20 3 TO-92 18B20 -55?至+125?DS18B20+ 3 TO-92 18B20 -55?至+125?DS18B20/T&R 18B20 -55?至+125? 3 TO-92(2000片)DS18B20+T&R 18B20 -55?至+125? 3 TO-92(2000片)DS18B20-SL/T&R 18B20 -55?至+125? 3 TO-92(2000片)* DS18B20-SL+T&R 18B20 -55?至+125? 3 TO-92(2000片)* DS18B20U 8 uSOP 18B20 -55?至+125?DS18B20U+ 8 uSOP 18B20 -55?至+125?DS18B20U/T&R 18B20 -55?至+125? 8 uSOP(3000片)DS18B20+T&R 18B20 -55?至+125? 8 uSOP(3000片)DS18B20Z 8 SO DS18B20 -55?至+125?DS18B20Z+ 8 SO DS18B20 -55?至+125?DS18B20Z/T&R DS18B20 -55?至+125? 8 SO(2500片)DS18B20Z+T&R DS18B20 -55?至+125? 8 SO(2500片)“+”号表示的是无铅封装。

DS18B20中文资料

DS18B20中文资料

第一部分:DS18B20得封装与管脚定义首先,我们来认识一下DS18B20这款芯片得外观与针脚定义,DS18B20芯片得常见封装为TO92,也就就是普通直插三极管得样子,当然也可以找到以SO(DS18B20Z)与μSOP(DS18B20U) 形式封装得产品,下面为DS18B20各种封装得图示及引脚图。

了解了这些该芯片得封装形式,下面就要说到各个管脚得定义了,如下表即为该芯片得管脚定义:上面得表中提到了一个“奇怪”得词——“寄生电源”,那我有必要说明一下了,DS18B20芯片可以工作在“寄生电源模式”下,该模式允许DS18B20工作在无外部电源状态,当总线为高电平时,寄生电源由单总线通过VDD 引脚,此时DS18B20可以从总线“窃取”能量,并将“偷来”得能量储存到寄生电源储能电容(Cpp)中,当总线为低电平时释放能量供给器件工作使用。

所以,当DS18B20工作在寄生电源模式时,VDD引脚必须接地。

第二部分:DS18B20得多种电路连接方式如下面得两张图片所示,分别为外部供电模式下单只与多只DS18B20测温系统得典型电路连接图。

(1)外部供电模式下得单只DS18B20芯片得连接图(2)外部供电模式下得多只DS18B20芯片得连接图这里需要说明得就是,DS18B20芯片通过达拉斯公司得单总线协议依靠一个单线端口通讯,当全部器件经由一个三态端口或者漏极开路端口与总线连接时,控制线需要连接一个弱上拉电阻。

在多只DS18B20连接时,每个DS18B20都拥有一个全球唯一得64位序列号,在这个总线系统中,微处理器依靠每个器件独有得64位片序列号辨认总线上得器件与记录总线上得器件地址,从而允许多只DS18B20同时连接在一条单线总线上,因此,可以很轻松地利用一个微处理器去控制很多分布在不同区域得DS18B20,这一特性在环境控制、探测建筑物、仪器等温度以及过程监测与控制等方面都非常有用。

对于DS18B20得电路连接,除了上面所说得传统得外部电源供电时得电路连接图,DS18B20也可以工作在“寄生电源模式”,而下图则表示了DS18B20工作在“寄生电源模式”下得电路连接图。

ds18b20中文

ds18b20中文

特征:独特的单线接口,只需 1 个接口引脚即可通信每个设备都有一个唯一的64位串行代码存储在光盘片上多点能力使分布式温度检测应用得以简化不需要外部部件可以从数据线供电,电源电压范围为3.0V至5.5V测量范围从-55 ° C 至+125 ° C(-67 ° F至257 ° F),从-10℃至+85 ° C的精度为0.5 ° C温度计分辨率是用户可选择的9至12位转换12位数字的最长时间是750ms用户可定义的非易失性的温度告警设置告警搜索命令识别和寻址温度在编定的极限之外的器件(温度告警情况)采用8引脚SO(150mil),8引脚SOP和3引脚TO - 92封装软件与DS1822兼容应用范围包括恒温控制工业系统消费类产品温度计或任何热敏系统综述64位ROM存储设备的独特序号。

存贮器包含2个字节的温度寄存器,它存储来自温度传感器的数字输出。

此外,暂存器可以访问的1个字节的上下限温度告警触发器(TH和TL)和1个字节的配置寄存器。

配置寄存器允许用户设置的温度到数字转换的分辨率为9,10,11或12位。

TH,TL和配置寄存器是非易失性的,因此掉电时依然可以保存数据。

该DS18B20使用Dallas的单总线协议,总线之间的通信用一个控制信号就可以实现。

控制线需要一个弱上拉电阻,因为所有的设备都是通过3线或开漏端口连接(在DS18B20中用DQ引脚)到总线的。

在这种总线系统中,微处理器(主设备)和地址标识上使用其独有的64位代码。

因为每个设备都有一个唯一的代码,一个总线上连接设备的数量几乎是无限的。

单总线协议,包括详细的解释命令和“时间槽”,此资料的单总线系统部分包括这些内容。

DS18B20的另一个特点是:没有外部电源供电仍然可以工作。

当DQ引脚为高电平时,电压是单总线上拉电阻通过DQ引脚供应的。

高电平信号也可以充当外部电源,当总线是低电平时供应给设备电压。

温度传感器DS18B20中文资料

温度传感器DS18B20中文资料

以 0.5 的增量值 在 0.5 至+125 的范围内测量温度 对于应用华氏温度的场合 必须使用查
找表或变换系数
注意 在 DS1820 中 温度是以 1/2 LSB 最低有效位 形式表示时 产生以下 9 位格式
MSB 最高有效位 1
最低有效位 LSB 11001110
= -25 最高有效 符号 位被复制到存储器内两字节的温度寄存器中较高 MSB 的所有位 这种 符号扩展
4
PD om
PD om
er ww
er ww
F-XChange View !
Click to buy NOW
w.docu-track.c
TARGETECH®
DS1820
F-XChange View !
Click to buy NOW
w.docu-track.c
图 3 使用 VDD 提供温度变换所需电流
钭率累加器用于补偿振荡器温度特性的非线性 以产生高分辩率的温度测量 通过改变温度每 升高一度 计数器必须经历的计数个数来实行补偿 因此 为了获得所需的分辩率 计数器的数值
5
PD om
PD om
er ww
er ww
F-XChange View !
Click to buy NOW
w.docu-track.c
Click to buy NOW
w.docu-track.c
到这一点 当使用寄生电源方式时 VDD 引脚必须连接到地 向 DS1820 供电的另外一种方法是通过使用连接到 VDD 引脚的外部电源 如图 3 所示 这种方法
的优点是在 I/O 线上不要求强的上拉 总线上主机不需向上连接便在温度变换期间使线保持高电
3

DS18B20中文手册

DS18B20中文手册
总线控制器通过发出报警搜索命令[ECh]检测总线上所有的 DS18B20 报警标识。 任何置位报警标识的 DS18B20 将响应这条命令,所以总线控制器能精确定位每一 个满足报警条件的 DS18B20。如果报警条件成立,而 TH 或 TL 的设置已经改变, 另一个温度转换将重新确认报警条件。
DS18B20 供电
达拉斯 半导体
DS18B20 可编程分辨率的 单总线®数字温度计
特征
引脚排列
l 独特的单线接口仅需一个端口引脚 进行通讯
l 每个器件有唯一的 64 位的序列号存 储在内部存储器中
l 简单的多点分布式测温应用 l 无需外部器件 l 可通过数据线供电。供电范围为 3.0V
到 5.5V。 l 测温范围为-55~+125℃(-67~+
外部电源给 DS18B20 供电 图 5
64 位(激)光刻只读存储器
每只 DS18B20 都有一个唯一存储在 ROM 中的 64 位编码。最前面 8 位是单线系列 编码:28h。接着的 48 位是一个唯一的序列号。最后 8 位是以上 56 位的 CRC 编 码。CRC 的详细解释见 CRC 发生器节。64 位 ROM 和 ROM 操作控制区允许 DS18B20 作为单总线器件并按照详述于单总线系统节的单总线协议工作。
每个 DS18B20 都有一个独特的 64 位序列号,从而允许多只 DS18B20 同时连在 一根单线总线上;因此,很简单就可以用一个微控制器去控制很多覆盖在一大片 区域的 DS18B20。这一特性在 HVAC 环境控制、探测建筑物、仪器或机器的温 度以及过程监测和控制等方面非常有用。
详细的引脚说明 表 1
8 引脚 SOIC 封装* TO-9 封装
5
1
4

Ds18b20温度传感器使用手册

Ds18b20温度传感器使用手册

Ds18b20温度传感器使用手册一、传感器实物图二、引脚说明(1)1 VCC 3.0~5.5V/DC 3 GND42 DQ 数字信号输入/输出端(2)1 5 GND2 63 VCC 3.0~5.5V/DC 74 DQ 数字信号输入/输出8端三、软件设计功能说明:ds18b20采集温度并显示在1602液晶上#include <reg52.h>#include <stdio.h>#define uchar unsigned char#define uint unsigned intsbit ds=P2^4; //温度传感器信号线uint temp;float f_temp;sbit rs=P1^0; //sbit lcden=P1^2; // 液晶sbit wr=P1^1; //void delay(uint z)//延时函数{uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}/***********液晶**************/void write_com(uchar com){//写液晶命令函数rs=0;lcden=0;P0=com;delay(3);lcden=1;delay(3);lcden=0;}void write_date(uchar date){//写液晶数据函数rs=1;lcden=0;P0=date;delay(3);lcden=1;delay(3);lcden=0;}void init() //液晶初始化{lcden=0;write_com(0x38);write_com(0x0e);write_com(0x06);write_com(0x01);}/***********ds18b20**********/void dsreset(void) //18B20复位,初始化函数{uint i;ds=0;i=103;while(i>0)i--;ds=1;i=4;while(i>0)i--;}bit tempreadbit(void) //读1位函数{uint i;bit dat;ds=0;i++; //i++ 起延时作用ds=1;i++;i++;dat=ds;i=8;while(i>0)i--;return (dat);}uchar tempread(void) //读1个字节{uchar i,j,dat;dat=0;for(i=1;i<=8;i++){j=tempreadbit();dat=(j<<7)|(dat>>1); //读出的数据最低位在最前面,这样刚好一个字节在DAT里}return(dat);}void tempwritebyte(uchar dat) //向18B20写一个字节数据{uint i;uchar j;bit testb;for(j=1;j<=8;j++){testb=dat&0x01;dat=dat>>1;if(testb) //写1{ds=0;i++;i++;ds=1;i=8;while(i>0)i--;}else{ds=0; //写0i=8;while(i>0)i--;ds=1;i++;i++;}}}void tempchange(void) //DS18B20 开始获取温度并转换{dsreset();delay(1);tempwritebyte(0xcc); // 写跳过读ROM指令tempwritebyte(0x44); // 写温度转换指令}uint get_temp() //读取寄存器中存储的温度数据{uchar a,b;dsreset();delay(1);tempwritebyte(0xcc);tempwritebyte(0xbe);a=tempread(); //读低8位b=tempread(); //读高8位temp=b;temp<<=8; //两个字节组合为1个字temp=temp|a;f_temp=temp*0.0625; //温度在寄存器中为12位分辨率位0.0625°temp=f_temp*10+0.5; //乘以10表示小数点后面只取1位,加0.5是四舍五入f_temp=f_temp+0.05;return temp; //temp是整型}uchar change(uchar a) //将数字转换为字符{uchar b;if(a==0) b='0';if(a==1) b='1';if(a==2) b='2';if(a==3) b='3';if(a==4) b='4';if(a==5) b='5';if(a==6) b='6';if(a==7) b='7';if(a==8) b='8';if(a==9) b='9';return b;}void dis_temp(uint t) //显示程序{uchar a,b;write_com(0x80+0x40);a=t/100;b=change(a);write_date(b); //十位数delay(5);a=t%100/10;b=change(a); //个位数write_date(b);delay(5);write_date(0x2e); //小数点delay(5);a=t%100%10;b=change(a); //十分位write_date(b);delay(5);write_date(0xdf); //摄氏度的符号delay(5);write_date(0x43);delay(5);}void main(){wr=0;init();while(1){write_com(0x01);tempchange();dis_temp(get_temp());delay(500);}}。

DS18B20详细中文资料

DS18B20详细中文资料

分辨率可编程单总线数字温度传感器——DS18B20 特征:独特单总线接口,只需要一个端口引脚线即可实现通信每个器件的片上ROM 有一个独特64 位串行码存储多点能力使分布式温度检测应用得到简化不需要外围元件能用数据线供电,供电的范围3.0V~5.5V测量温度的范围:-55℃~+125℃(-67℉~+257℉)从-10℃~+85℃的测量的精度是±0.5℃温度传感器分别率由用户从9-12 位中选择在750ms 内把温度转换为12 位数字字(最大值)用户可定义,非易失性温度告警设置告警搜索命令识别和寻址温度在编定的极限之外的器件(温度告警情况)可采用8 引脚SO(150mil)、8 引脚µSOP 和3 引脚TO-92 封装软件兼容DS1822 器件应用范围包括:恒温控制、工业系统、消费类产品、温度计和任何的热敏系统图1 DS18B20 引脚排列图引脚说明:GND—地DQ—数字输入输出VDD—供电电压NC—空连接一般说明:DS18B20 数字温度传感器提供9~12 位摄氏温度的测量,拥有非易失性用户可编程最高与最低触发点告警功能。

DS18B20 通过单总线实现通信,单总线通常是DS18B20 连接。

它能够感应温度的范围为-55℃~+125℃,在-10℃~+85℃的测量的精度是±0.5℃,而且DS18B20 可以直接从数据线上获取供电(寄生电源)而不需要一个额外的外部电源。

因为每个DS18B20 拥有一个独特的64 序列号,因此它允许多个DS18B20 在一条单总线上,所以很方便使用一个微控制器来控制多个分布在较大范围内的DS18B20。

受益于这一特性的应用包括HAVC 环境控制、建筑物、设备和机械内的温度监测、以及过程监测和控制过程的温度监测。

图2注意: A "+"符号在封装上也标有。

订购信息表1S O* µSOP * TO-924 4 15 1 23 8 3DS18B20 详细引脚说明号符明说GND 地当脚引线总单路开,脚引出输入输据数,DQ 生寄见(供件器给时式模源电生寄用使电)分部源电VDD 选可下式模作操源电生寄在脚引,VDDVDD 地接须必* 表中所有未列出的引脚都是NC(空接)概述:方框图3 给出了表一所描述的DS18B20 的主要引脚连接。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

概述DS18B20数字温度传感器提供9-Bit 到12-Bit的摄氏温度测量精度和一个用户可编程的非易失性且具有过温和低温触发报警的报警功能。

DS18B20采用的1-Wire通信即仅采用一个数据线(以及地)与微控制器进行通信。

该传感器的温度检测范围为-55℃至+125℃,并且在温度范围超过-10℃至85℃之外时还具有+-0.5℃的精度。

此外,DS18B20可以直接由数据线供电而不需要外部电源供电。

每片DS18B20都有一个独一无二的64位序列号,所以一个1-Wire总线上可连接多个DS18B20设备。

因此,在一个分布式的大环境里用一个微控制器控制多个DS18B20是非常简单的。

这些特征使得其在HV AC环境控制,在建筑、设备及机械的温度监控系统,以及温度过程控制系统中有着很大的优势。

特性·独特的1-Wire总线接口仅需要一个管脚来通信。

·每个设备的内部ROM上都烧写了一个独一无二的64位序列号。

·多路采集能力使得分布式温度采集应用更加简单。

·无需外围元件。

·能够采用数据线供电;供电范围为3.0V至5.5V。

·温度可测量范围为:-55℃至+125℃(-67℉至+257℉)。

·温度范围超过-10℃至85℃之外时具有+-0.5℃的精度。

·内部温度采集精度可以由用户自定义为9-Bits至12-Bits。

DS18B20 分辨率可编程1-Wire数字温度传感器·温度转换时间在转换精度为12-Bits时达到最大值750ms。

·用户自定义非易失性的的温度报警设置。

·定义了温度报警搜索命令和当温度超过用户自定义的设定值时。

·可选择的8-Pin SO (150 mils), 8-PinμSOP,及3-Pin TO-92封装。

·与DS1822程序兼容。

·应用于温度控制系统,工业系统,民用产品,温度传感器,或者任何温度检测系统中。

管脚定义图订购信息“+”号表示的是无铅封装。

”+”会出现在无铅封装的顶部标号处。

T&R=卷带包装。

*TO-92封装管脚描述综述图1为DS18B20的内部框图。

内部的64位的ROM存储其独一无二的序列号。

暂存存储器(The scratchpad memory)包含了存储有数字温度结果的2个字节宽度的温度寄存器。

另外,暂存存储器还提供了一个字节的过温和低温(TH和TL)温度报警寄存器和一个字节的配置寄存器。

配置寄存器允许用户自定义温度转换为9、10、11、12位精度。

过温和低温(TH和TL)温度报警寄存器是非易失性的(EEPROM),所以其可以在设备断电的情况下保存。

DS18B20采用的Maxim公司专有的1-Wire总线协议,该总线协议仅需要一个控制信号进行通信。

该控制信号线需要一个唤醒的上拉电阻以防止连接在该总线上的口是3态或者高阻态(DQ 信号线是在DS18B20上)。

在该总线系统中,微控制器(主设备)通过每个设备的64为序列号来识别该总线上的设备。

因为每个设备都有一个独一无二的序列号,挂在一个总线上的设备理论上是可以无限个的。

在下面的“1-Wire总线系统”章节中包含有1-Wire总线协议详细的命令和时序关系。

DS18B20的另外一个特性就是可以无需外部电源供电。

当数据线DQ为高的时候由其为设备供电。

总线拉高的时候为内部电容(Spp)充电,当总线拉低是由该电容向设备供电。

这种由1-Wire 总线为设备供电的方式称为“寄生电源”。

此外,DS18B20也可以由外部电源通过VDD供电。

图1 DS18B20内部方框图说明-温度测量DS18B20的核心功能是直接温度-数字测量。

其温度转换可由用户自定义为9、10、11、12位精度分别为0.5℃、0.25℃、0.125℃、0.0625℃分辨率。

值得注意的是,上电默认为12位转换精度。

DS18B20上电后工作在低功耗闲置状态下。

主设备必须向DS18B20发送温度转换命令[44h]才能开始温度转换。

温度转换后,温度转换的值将会保存在暂存存储器的温度寄存器中,并且DS18B20将会恢复到闲置状态。

如果DS18B20是由外部供电,当发送完温度转换命令[44h]后,主设备可以执行“读数据时序”(请参阅“1-Wire总线系统”章节),若此时温度转换正在进行DS18B20将会响应“0”,若温度转换完成则会响应“1”。

如果DS18B20是由“寄生电源”供电,该响应的技术将不能使用,因为在整个温度转换期间,总线必须强制拉高。

该总线的“寄生电源”供电方式将会在“DS18B20的供电”章节中详细讲解。

DS18B20的温度输出数据时在摄氏度下校准的;若是在华氏度下应用的话,可以用查表法或者常规的数据换算。

温度数据以一个16位标志扩展二进制补码数的形式存储在温度寄存器中(详见图2)。

符号标志位(S)温度的正负极性:正数则S=0,负数则S=1。

如果DS18B20被定义为12位的转换精度,温度寄存器中的所有位都将包含有效数据。

若为11位转换精度,则bit 0为未定义的。

若为10位转换精度,则bit 1和bit 0为未定义的。

若为9位转换精度,则bit 2、bit 1和bit 0为未定义的。

表格1为在12位转换精度下温度输出数据与相对应温度之间的关系表。

图2 温度寄存器格式表格1 温度/数据对应关系*上电复位时温度寄存器中的值为+85℃。

说明-温度报警当DS18B20完成一次温度转换后,该温度转换值将会与用户定义的温度报警TH和TL寄存器(详见图3)中的值进行比较。

符号标志位(S)温度的正负极性:正数则S=0,负数则S=1。

过温和低温(TH和TL)温度报警寄存器是非易失性的(EEPROM),所以其可以在设备断电的情况下保存。

过温和低温(TH和TL)温度报警寄存器在“寄存器”章节中可以解释为暂存寄存器的第2、3个字节。

图3 过温和低温(TH和TL)温度报警寄存器因为过温和低温(TH和TL)温度报警寄存器是一个8位的寄存器,所以在于其比较时温度寄存器的4位至11位才是有效的数据。

如果温度转换数据小于或等于TL及大于或等于TH,DS18B20内部的报警标志位将会被置位。

该标志位在每次温度转换之后都会更新,因此,如报警控制消失,该标志位在温度转换之后将会关闭。

主设备可以通过报警查询命令[Che]查询该总线上的DS18B20设备的报警标志位。

任何一个报警标志位已经置位的DS18B20设备都会响应该命令,因此,主设备可以确定到底哪个DS18B20设备存在温度报警。

如果温度报警存在,并且过温和低温(TH和TL)温度报警寄存器已经被改变,则下一个温度转换值必须验证其温度报警标志位。

DS18B20的供电DS18B20可以通过DVD引脚由外部供电,或者可以由“寄生电源”供电,这使得DS18B20可以不采用当地的外部电源供电而实现其功能。

“寄生电源”供电方式在远程温度检测或空间比较有限制的地方有很大的应用。

图1展示的就是DS18B20的“寄生电源”控制电路,其由DQ口拉高时向其供电。

总线拉高的时候为内部电容(C pp)充电,当总线拉低是由该电容向设备供电。

当DS18B20为“寄生电源”供电模式时,该VDD引脚必须连接到地。

在“寄生电源”供电模式下,只要工作在指定的时序下,则该1-Wire总线和Cpp可以提供给DS18B20足够的电流来完成各种工作以及满足供电电压(详见“交/直流电气特性”)。

然而,当DS18B20正在进行温度转换或正将暂存寄存器中的值拷贝至EEPROM时,其工作电流将会高至1.5mA。

通过1-Wire总线上的上拉电阻提供的电流将会引起不可接受的电压跌落,同时将会有很大部分电流由Cpp提供。

为了保证DS18B20有足够的电流供应,有必要在1-Wire总线上提供一个强有力的上拉,不管此时在进行温度转换还是正将暂存寄存器中的值拷贝至EEPROM中。

图4中所示的由一个MOSFET直接将总线拉至高电平能够很好的实现。

值得注意的是,1-Wire总线必须在温度转换命令[44h]或暂存寄存器拷贝命令[48h]下达10uS后提供一个强有力的上拉,同时在整个温度转换期间(Tconv)或数据传送(Twr=10ms)期间总线必须一直强制拉高。

当强制拉高时该1-Wire总线上不允许有任何其他动作。

当然,DS18B20也可以采用常规的通过外部电源连接至VDD引脚的供电方式,如图5所示。

这种供电方式具有不需要上拉的MOSFET、该1-Wire总线在温度转换期间可执行其他动作的优点。

“寄生电源”供电方式在温度超过+100℃时不推荐使用,因为在超过该温度下时将会有很大的漏电流导致不能进行正常的通信。

实际应用中,在类似的温度状态下强烈推荐该DS18B20由外部供电电源供电。

在某些情况下,总线上的主设备可能不知道连接到该总线上的DS18B20是由“寄生电源”供电还是由外部电源供电。

此时该主设备就需要得到一些信息来决定在温度转换期间是否要强制拉高。

为了得到这些信息,主设备可以在发送一个跳过ROM命令[CCh]之后再发送一个读取供电方式命令[B4h]再紧跟一个“读取数据时序”。

在读取数据时序中,“寄生电源”供电方式的DS18B20将会将总线拉低,但是,由外部供电方式的DS18B20将会让该总线继续保持高。

所以,如果总线被拉低,主设备就必须要在温度转换期间将总线强制拉高。

图4“寄生电源”供电方式图5外部电源供电方式64位光刻ROM编码每片DS18B20的片内ROM中都存有一个独一无二的64位的编码。

在该内ROM编码的低8位保存有DS18B20的分类编码:28h。

中间的48位保存有独一无二的序列号。

最高8位保存片内ROM中前56位的循环冗余校验(CRC)值。

更加详细的在“1-Wire总线系统”章节该64位ROM 编码及相关的ROM功能控制逻辑允许DS18B20作为1-Wire总线协议上的设备。

64位光刻ROM编码存储器DS18B20的存储器组织结构如图7所示。

该存储器包含了SRAM暂存寄存器和存储着过温和低温(TH和TL)温度报警寄存器及配置寄存器的非易失性EEPROM。

值得注意的是当DS18B20的温度报警功能没有用到的时候,过温和低温(TH和TL)温度报警寄存器可以当做通用功能的存储单元。

所有的存储命令在“DS18B20功能命令”章节有详细描述。

暂存寄存器中的Byte 0和Byte 1分别作为温度寄存器的低字节和高字节。

同时这两个字节是只读的。

Byte 2和Byte 3作为过温和低温(TH和TL)温度报警寄存器。

Byte 4保存着配置寄存器的数据,详见“配置寄存器”章节。

Byte 5、6、7作为内部使用的字节而保留使用,不可被写入。

相关文档
最新文档