全球旧事资料 分类
分辨率越高所需要的温度数据转换时间就越长因此在实际应用中要在分辨率和转换时间权衡考虑高速暂存存储器除了配置寄存器外还有其他8个字节组成其分配如下所示其中温度信息第12字节TH和TL值第34字节第6~8字节未用表现为全逻辑1第9字节读出的是前面所有8个字节的CRC码可用来保证通信正确
当DS18B20接收到温度转换命令后开始启动转换转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第12字节单片机可通过单线接口读到该数据读取时低位在前高位在后数据格式以00625℃LSB形式表示温度值格式如下
f对应的温度计算当符号位S0时直接将二进制位转换为十进制当S1时先将补码变换为原码再计算十进制值表2是对应的一部分温度值
DS18B20完成温度转换后就把测得的温度值与TH作比较TTH或TTL则将该器件内的告警标志置位TL若并对主机发出的告警搜索命令作出响应因此可用多只DS18B20同时测量温度并进行告警搜索4CRC的产生在64bROM的最高有效字节中存储有循环冗余校验码CRC主机根据ROM的前56位来计算CRC值并和存入DS18B20中的CRC值做比较以判断主机收到的ROM数据是否正确
3DS18B20的测温原理DS18B20的测温原理如图2所示图中低温度系数晶振的振荡频率受温度的影响很小1用于产生固定频率的脉冲信号送给减法计数器1高温度系数晶振随温度变化其震荡频率明显改变所产生的信号作为减法计数器2的脉冲输入图中还隐含着计数门当计数门打开时DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数进而完成温度测量计数门的开启时间由高温度系数振荡器来决定每次测量前首先将55℃所对应的基数分别置入减法计数器1和温度寄存器中减法计数器1和温度寄存器被预置在55℃所对应的一个基数值减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数当减法计数器1的预置值减到0时温度寄存器的值将加1减法计数器1的预置将重新被装入减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数如此循环直到减法计数器2计数到0时停止温度寄存器值的累加此时温度寄存器中的数值即为所测温度图2中的斜率累加器用于补偿和修正测温过程中的非线性其输出用于修正减法计数器的预置值只要计数门仍未关闭就重复上述过程直至温度寄存器值达到被测温度值这就是DS18B20的测温原理另外由于DS18B20单线通信功能是分时完成的他有严格的时隙概念因此读写时序很重要系统对DS18B20的各种操r
好听全球资料 返回顶部