全球旧事资料 分类
字节24、5678保留字节1、2计数器余值计数器CRC值以16位补码形式存放存放温度上限值存放温度下限值
序号0123
11
f此外,DS18B20内部还包括寄生电源、电源检测、存储控制逻辑、8位循环冗余码生成器(CRC)等部分。DS18B20有两种供电方式。如图32所示:图(a)是由外电源供电,图b是IO口总线和寄生电容配合供电。DS18B20寄生电源由两个二极管和寄生电容构成。电源检测电路用于判定供电方式。寄生电源供电时,电源端与接地端并联接地,器件从总线上获取电源。在IO线呈低电平时,改由寄生电容上的电压继续向器件供电。采用寄生电源有两个优点:一是检测远程温度是无需本地电源;二是缺少正常电源时也能读ROM。若采用外部电源,则通过二极管向器件供电。
UDDIODS18B20
MCU单片机P11
IODS18B20UDDGND
MCU单片机P11
GND
图a使用外部电源供电
图(b)使用寄生电源供电
图32DS18B20与微处理器的硬件连接方式
由表33可见,分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以00625℃/LSB形式表示。当符号位S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。表24是一部分温度值对应的二进制温度数据。
12
f表3-3DS18B20温度转换时间表R10011R00101表3-4温度℃12525050052555分辨率位9101112一部分温度对应值表数字输出(十六进制)00FAH0032H0001H0000HFFFFHFFCEHFF92H温度最大转向时间ms93751875375750
数字输出(二进制)0000000011111010000000000011001000000000000000010000000000000000111111111111111111111111110011101111111110010010
32DS18B20的测温原理
每一片DSl8B20在其ROM中都存有其唯一的64地址位序列号,在出厂前已写入片内ROM中。主机在进入操作程序前必须用读ROM33H命令将该DSl8B20的序列号读出。程序可以先跳过ROM,启动所有DSl8B20进行温度变换,之后通过匹配ROM,再逐一地读回每个DSl8B20的温度数据。DS18B20的测温原理如图33所r
好听全球资料 返回顶部