华佗养生网
您的当前位置:首页DS18B20

DS18B20

来源:华佗养生网
DS18B20

 DS18B20的性能指标

 (1)只需一根口线与MCU连接,无需外部原件。  由总线提供电源,或专线供电。  测温范围为-55摄氏度至+125摄氏度。  9到12位温度读数。  温度转换时间为200ms。

 用户自行设定温度报警上下限,掉电后数据有效。  可识别并寻址系统中温度超限报警的DS18B20,

1 2 3 GND DQ VCC DS18B20  DS18B20的电源及工作方式

 DS18B20的供电方式,DS18B20有两种工作方式,一种是外部供电方

式即从VCC引脚供电,GND接地,另一种是寄生电源供电方式,直接从DQ端上获得电源,当DQ为高电平是为内部电容充电,当DQ为低电平是电容为DS18B20供电(VCC端必须接地)已确保芯片的稳定性,

 DS18B20的测温原理,DS18B20通过内部温度寄存器接收一个受温度

系数影响的振荡器输出的脉冲个数直接影响到数字温度数据,温度转化命令执行后,发送读高速暂存器命令(BEh)可将温度数据经单线总线读出,温度数据传输时,低位在先。

 当收到温度转换命令后,DS18B20的内部数字化温度转换器讲温度

数据以二进制补吗形式储存到16位快速暂存器中,有效数据位可编程设定为9位,10位,11位,12位,分别对应4种分辨率 :0.5摄氏度 0.25摄氏度 0.125摄氏度 0.0625摄氏度。有效数据最

高位为符号位,可表示温度的正负值。高字节的其他高位扩展为符号位;有效数据的第四位表示温度的小数位,DS18B20出厂默认状态为12位,

2

32S2 21 20 2-1 2-2 2-3 2-4 S S S S 26 25 24  表 8-2 温度与转换数据的关系 +125℃ +85℃ +25.0625℃ +10.125℃ +0.5℃ 0℃ -0.5℃ -10.125℃ -25.0625℃ -55℃ 0000 0111 1101 0000 0000 0101 0101 0000 0000 0001 1001 0001 0000 0000 1010 0010 0000 0000 0000 1000 0000 0000 0000 0000 1111 1111 1111 1000 1111 1111 0101 1110 1111 1110 0110 1111 1111 1100 1001 0000 07D0h 0550h 0191h 00A2h 0008h 0000h FFF8h FF5Eh FF6Fh FC90h //上电复位时温度寄存器的值为+85℃(0000 0101 0101 0000)  报警信号的应用 。DS18B20 每次执行完温度抓换后,温度值将与储存在TH和TL内的触发值相比较,如果测量的结果大于TH的值或小于TL的值,就会置位内部的报警标志位,在连接多片DS18B20的应用系统中,主机发送报警搜索命令(ECh)时,有置位报警标志位的DS18B20会响应总线主机发回标志位,其他没有置位报警

标志位的DS18B20则保持沉默,这样便于主机立即识别DS18B20并读出数据。

 16位的温度寄存器与8位TH或TL寄存器内容进行比较操作时,讲忽略温度寄存器高字节,而TH或TL得最高位对应温度数据的符号位。

 DS18B20的内部结构

 DS18B20的内部结构如图8-2所示。主要由数字器件组成;位闪速ROM,温度传感器,温度寄存器(告诉暂存RAM与EPR0M)  bit闪速ROM的结构如图8-3所示。每片DS18B20都有唯一的位长的激光ROM 其中低8位是单线产品(DS18B20代码为28h),后续的48位唯一的序列号,高8位是前56的CRC(循环冗余校验码) 。位的ROM及其功能控制部分使DS18B20作物idanxian总线器件进行操作,只有满足功能协议后对DS18B20的控制功能才能接受,总线主机必须提供5个ROM命令中的一个且这个名林被成功执行,DS18B20才可接受总线主机的指定功能,即后续提供的6个存储器操作中的一个命令。 8位CRC寄存器 2

bit ROM 和单线接口 存 储器 存储器控制逻辑 温度传感器 高温度触发器 低温度触发器 8bit校验CRC 48bit序列号 8bit工厂代码 Msb lsb msb lsb msb lsb 8--3 DS18B20闪速ROM的存储结构

 DS18B20结构废纸寄存器。第0—4位始终为“1”。第7位始终为“0” 第5,6位(R1,R0)决定温度分辨率及时对应的温度转换时间,见表8-3。

0 R1 R0 1 1 1 1 1 MSB LSB

R1 0 0 1 1 2

R0 0 1 0 1 测温分辨率 最大温度转换时间 9-bit 10-bit 11-bit 12bit 93.75ms 187.5ms 375ms 750ms  存储器。DS18B20 的存储器由一个告诉暂存器RAM和一个永久性电

可擦除EPR0M组成,后则存储高,低温度触发器TH TL和结构配置寄存器的内容。暂存器有助于确保单线通信数据的完整性。数据首先用写暂存器命令(4Eh)读回进行校验;校验之后,再用复制暂存器;写入的数据可以被读,暂存器命令(BEh)读回进行校验;校验之后,再用复制暂存器命令(48h)把数据传送到永久性EPROM中,这一过程确保了更改存储器是数据的完整性。

2

高速暂存器 温度低字节LB 温度高字节HB 温度触发高字节TH 温度触发低字节TL 结构配置CONFIG 保留 保留 保留 字节 0 1 2 3 4 5 6 7 高速暂存器由8字节存储器组成,如图8-4所示。前两个字节妇女别是测量温度数据的低字节(LSB),高字节(MSB);第3,4字节是TH TL 的复制值,第5字节是结构配置寄存器的复制值,这三个字节数据虽会因普通RAM掉电而失去信息,但每次上电时都会自动从永久性EPROM中复制数据进行刷新,第6-8字节保留作内部运算用,第9字节

2

循环冗余校验码(CRC) 8 是前面8个字节的循环冗余校验码(CRC);

循环冗余校验码CRC产生。DS18B20内部位ROM最高有效字节,是循环冗余校验码CRC,主机可以读出位ROM的前56位,计算出CRC的值,并把它与存储器在DS18B20内的CRC值进行比较,以决定ROM的数据是否已被主机正确地接收,计算CRC的等效多项式函数为, CRC=X^8+X^5+X^4+1

DS18B20 也利用与上述相同的多项式函数产生一个8位CRC值,并把此值提供给总线主机以证实数据字节的传送。在使用CRC来证实数据传送的每一种情况中,总线主机必须用上述多现实计算出CRC的值,并把计算机所得的值与存储在DS18B20的位ROM中的最高字节CRC值(ROM读数),或者DS18B20中计算得到CRC值(读暂存器操作时读出的第9字节)进行比较。总线主机根据CRC值的比较来决定是否继续操作。当以上CRC值比较不相符合,DS18B20内部没有电路来阻止命

令序列的继续执行。

 单线总线CRC可以用由一个意味寄存器和异或X0R门组成的多项式器来产生,如图8-5所示

图8-5

意味寄存器的所有为被初始化为零。然后从产品系列编码的最低有效位开始,每次一位。当产品系列编码的8位移入后,接着移入序列号。在序列号的第48位进入之后,移位寄存器便包含了CRC值。移入CRC的8位应该使移位寄存器返回为零。

XOR XOR  DS18B20D的操作命令

 DS18B20经单线接口协议进行存取操作的顺序是:

 初始化(发复位脉冲)→ROM功能命令操作→存储器功能命令操作

→数据处理操作。

 初始化。单线总线上的所有传输操作均从初始化序列开始,如图8-6。

初始化序列包括总线主机发出复位脉冲,接着由从属器件送出存在脉冲。存在脉冲使总线主机知道DS18B20挂在总线上并准备进行操作。

主机发送复位脉冲 主 机 接 收 480us

 ROM 命令代码及功能。总线主机检测到有DS18B20后,可发送5个8

480 读ROM命令(33h):在单片机DS18B20系统应用中,用该命令可读出

其序列号,系列号和CRC;在总线上有多个DS18B20的系统中用该命令,将发生冲突。

 匹配ROM命令(55H);多个DS18B20在线应用时,总线主机在读取

位ROM信息后用该命令寻址指定的DS18B20,只有位ROM顺序正确匹配的DS18B20才响应此后的存储器操作命令,其他不匹配的从属器件将等待复位脉冲,该命令在单片DS18B20系统应用中也能用。

 跳过ROM命令(cch);在单片DS18B20系统应用中,总线主机发送

该命令后直接执行存储器操作,而不需要传输位ROM信息,这样可以节省存取时间。在总线上有多个DS18B20的系统中用该命令,将发生冲突。

 搜索ROM命令(f0h)系统初始化后,总线主机不知道总线是哪个器

件的数目和器件的位ROM码,利用搜索ROM命令可使总线主机采用消除处理法识别总线上所有从属器件的位ROM码。

 报警搜索命令(ECh);该命令与搜索ROM命令的流程相同,只有前

次温度测量时满足报警条件的DS18B20才响应该命令。报警条件定义为温度高于TH 或低于TL 中的数值,DS18B20上电时报警条件被置位。

 存储器操作命令代码及其含义

 温度转换暂存器命令(44h)启动在线DS18B20进行温度转换。  写告诉暂存器命令(4Eh)写入高速暂存器命令。从TH 寄存器开始

连续写入三个字节,存储到告诉暂存器的2-4单元(TH TL CONFIG ).三个字节都必须在复位操作之前写入。

 读高速暂存器命令;(beh);读取高速暂存器命令。读操作从字节0

开始连续读出低位在前,直到读完第9字节。没有读完所有字节时。总线主机发送复位脉冲可终止操作。

 复制高速暂存器命令(48h):将高速暂存器中TH TL CONGIG 三个

字节数值复制到EERAM中,保存温度触发器和结构配置的内容不丢失。

 召回EEROM命令(b8h):将EERAM中的TH TL 和CONFIG的数值复

制到高速暂存器相应单元中。

 度供电状态命令(b4h) :读出供电模式,“0”为寄生电源;“1”

为外部电源。

5.单线总线的读/写时际

的操作。

 DS18B20采用读/写时际处理数据位(0/1)形成命令字而完成指定

 写时际。写时际是主机力高数据线后,使数据线从逻辑高电平跳变

为逻辑低电平再释放的过程,有写“1”时际和写“0”时际两种,所有写时际操作持续时间至少需要60us且两个写时际周期的间隔

时间必须大于1us,如图8-7所示

主机写时际“0” 主机写时际“1” 60us >1us 15us DS18B20采样 45us 15us DS18B20采样 45us

DS18B20在DQ数据线变低后15-60us之间采样数据线,DQ数据线为高电平既是数据“1”,DQ数据线为低电平既是数据“0:”。

主机发送写“1”时际拉低数据线至少1us,再拉高数据线,也也已在15us后拉高数据线然后释放;发送写“0”时际拉低数据线后一直保持低电平60us 在释放。

 读时际。读时际是主机使数据线从逻辑高电平大地为逻辑低电平,持续至少1us后释放数据线,再接收从DS18B20传来的数据位的过陈塘关,

读时际的持续时间必须大于60us,且两个读时际操作的回复时间间隔必须大于1us,如图8-8所示。

主机读0时际 1us 主机读1时际 》1us

15us 主机采样 45us 15us 主机采样 45us

DS18B20在读时际数据线下降沿之后15us开始输出有效数据,,此时主机必须释放数据线(转为输入状态)。读时际技术后数据线由外部上拉

电阻拉回至高电平。

5.1k

MCS51 P1.7 100 VCC DS18B20 DQ GND GND

因篇幅问题不能全部显示,请点此查看更多更全内容