寄生电源:
从电源的框图中可以看出,电路从DQ和VDD为高电平时“偷取”能量,当特定的时间和电压适合时,DQ可以给电路提供充足的能量。寄生电源的优势有二:无需提供遥远的电源;在缺少正常供电时,可以读取ROM.为了使芯片能够精确的对温度进行转换,当转换温度时确保供电充足。值得重视的是,如果运行电流到达1.5mA,由于5K的上拉电阻,DQ不能得到足够的能量,这对单总线上连接多个芯片同时进行转换是很不利的。这里有两种方法确保温度转换时有足够的能量,第一种方法是无论什么时候转换温度或者从EEPROM拷贝数据给DQ提供一个强上拉电阻,这种方法可以通过使用一个场效应管上拉DQ线直接提供能量,如下图所示:
在这里值得注意的是DQ线必须在发出命令10us内完成上拉操作,当使用这种模式的时候,确保VDD接地。
另外一种提供电流的方式是通过使用VDD引脚连接一个外部电源,如下图所示,这样连接的优势是DQ上不需要连接一个强上拉,并且总线控制主机不需要在温度转换的时候总保持高电平,这样使得在转换的时间内单线上可以有其他的数据通过。此外,任何DS18B20的序列都可以挂在单线上,如果都需要使用外部电源,可以同时通过执行“跳过ROM”和执行温度转换命令来进行温度转换,注意当外部电源激活时,GND必须接地。
在温度达到100度时,寄生电源的方式不推荐使用,因为提供过高的漏电电流使得正常通信不能维持。应用这种高温时强烈推荐VDD连接DS18B20。
环境有时候不知道控制主机知道哪里DS18B20芯片使用了寄生电源或者使用外部的VDD,这里可以通过电源信号来实现,也是就总线控制主机通过发送“跳过ROM”命令,然后发送读取的命令,然后读取时间点,此时如果芯片发送“0”回总线表示使用的是寄生电源方式,发送“1”表示通过VDD提供能量,如果主机收到“0”就知道必须在转换温度时给DQ提供强上拉,其他的存储器控制命令可以参看命令协议中详情。
操作:温度测量
DS18B20的核心功能是指示数字的温度传感器,其方案可以由用户设置(9,10,11,12位),默认情况使用12位。这相当于现实不同的精度。通过温度转换命令执行操作后温度数据被保存在16位高速缓存中,信号分为两种不同的格式保存,通过执行读缓存的命令返回采集到的温度。传送时最低有效位LSB优先,最高加权位包含了标识温度正负的“s”位。
左边的图描述了输出数据的格式,在这里使用12bit,如果想设置为更低位解决方案,可以在空位处补零。如果采用华氏温度显示,则需要查找表或者是查找路径。
操作:警示信号
温度转换完成后,温度将和TH与TL进行比较,如果不在这个范围之内则会返回一个警示标志。允许多芯片同时并行惊醒温度测量,如果某处芯片超出了此范围,此芯片可以被辨别出并立即读取没有别警示的芯片。
64位激光ROM:
每一片芯片提供了一个特定的系列号,前8位为DS18B20的家族系列,后面48位表征不同的芯片系列。在通过单线对芯片进行配置后,放可以执行下面的操作。