1 DSl8820简介
DS18820数字温度计是DALEAS公司生产的1一Wire,即单总线器件,属于新一代适配微处理器的智能数字温度传感器。将温度感测、信号变换、A/D转换和加热功能集成到一个芯片上,采用T0—92封装,接口非常简单。其引脚和封装如图1所示,DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
2 DSl8820的内部结构和工作时序
2.1 DSl8820的内部结构
DSl8820内部结构如图2所示,主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。
ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DSl8820的地址序列码,每个DSl8820的64位序列号均不相同。64位ROM的排的循环冗余校验码(CRC=X8+X5+X4+1)。ROM的作用是使每一个DSl8820都各不相同,这样就可以实现一根总线上挂接多个DSl8820的目的。高速暂存器是一个9字节的存储器。开始两个字节包含被测温度的数字量信息;第3、4、5字节分别是TH、TL、配置寄存器的临时拷贝,每一次上电复位时被刷新;第6、7、8字节未用,表现为全逻辑1;第9字节读出的是前面所有8个字节的CRC码,可用来保证通信正确。
DSl8820中的温度传感器可完成对温度的测量,并用16位符号扩展的二进制补码形式输出温度值,以0.0625℃/LSB形式表达,其中S为符号位。例+125℃的数字输出为07DOH,+25.06℃的数字输出为019lH,一25.06℃的数字输出为FF6FH,一55℃的数字输出为FC90H。
高低温报警触发器TH和TL、配置寄存器均由一个字节的EEPROM组成,使用一个存储器功能命令可对TH、TL或配置寄存器写入。其中配置寄存器的格式如下:
R1、RO决定温度转换的精度位数:RlR0=“00”,9位精度,最大转换时间为93.75ms;R1RO=“01”,10位精度,最大转换时间为187.5ms;R1RO=“10”,11位精度,最大转换时间为375ms;R1R0=“11”,12位精度,最大转换时间为750ms;默认为12位精度。
2.2 DSl8820的工作时序
DSl8820的一线工作协议流程是:初始化→ROM操作指令→存储器操作指令→数据传输。其工作时序包括初始化时序、写时序和读时序,如下图3所示:
(1)DSl8820的复位时序
(2)DSl8820的读时序