单片机测温芯片ds18b20 是一款常用的ic,那么它有何优势和特点呢?对于ds18b20 又是如何处理和支持负温度的呢?一起来了解一下。
ds18b20优势和特点
(1)在温度转换精度为±0.5℃时,电压范围:3.0~5.5v,寄生电源方式下可由数据线供电。既可以用寄生电源供电,也可采用外部电源供电。
(2)独特的单线接口方式:ds18b20与微处理器连接仅需一个i/o口线便可实现微处理器与ds18b20的双向通讯。无需变换其他电路,即可直接输出被测温度值。
(3)支持多点组网功能,多个ds18b20可以并联在唯一的三线上,实现组网多点测温。
(4)温度测量范围为-55℃~+125℃,在-10~+85℃时精度为±0.5℃,固有测温分辨率为0.5℃。
(5)掉电保护功能:内部有eeprom(electrically-erasable programmable read-only memory,可擦可编程只读存储器),系统掉电后,它仍可保存分辨率及报警温度的设定值。
(6)在9位分辨率时最长转换时间为93.75ms;12位分辨率时,最长转换时间为750ms。
(7)直接以数字信号方式输出温度测量结果,以“一线总线”串行方式传送给cpu (central processing unit,中央处理器),同时可传送校验码,具有极强的抗干扰纠错能力。
(8)负压特性:电源极性接反时,芯片不会被烧毁,但不能正常工作。
(9)可编程分辨率为9~12位,对应的分辨温度为0.5℃、0.25℃、0.125℃、和 0.0625℃。
(10)每个芯片唯一编码,支持联网寻址,零功耗等待。
ds18b20数据处理支持负温度
18b20片内有一个9byte的 sram 和一个3byte的 eeprom。如下图:
其中我们需要使用的就是sram中的前两个字节,这里储存的就是我们要的温度值。这两个字节的结构如下:
我们可以看到,ls(低字节)的高四位 和 ms(高字节)的低四位共8个字节构成了实际的一个带符号位的字节数据可以表示(-128~127)足够表示18b20的温度范围。ms的高四位为符号为的扩展,当温度值为正时ms高5位(图中s的五位)全为0,温度值为负时全为1。ls的低四位为小数部分,不是要求太高的话可以忽略。我们这里暂不套路小数部分的处理方法。
下面我们就来讨论整数部分的数据处理方法。
整数部分我们实际只要高字节的第四位和低字节的高四位。首先通过移位求或后生成一个无符号位的字节。然后判断这个无符号的值是否大于127,如果大于128说明是个负温度需要处理,否则就可以直接返回。
18b20的负温度使用补码形式输出,我们只需要对这个字节进行取反加1后就是这个负温度的绝对值,这时候我们需要一个符号标记告诉输出函数这是个负温度需要显示负号即可。
下面贴出数据处理部分的代码:
uchar readtemp() //读取温度
{
uchar temp = 0;
uchar tmp[2]
reset();
writebyte(0xcc); // 跳过序列号
writebyte(0x44); // 启动温度转换
delayms(1000);
reset();
writebyte(0xcc);
writebyte(0xbe); //读9个寄存器,前两个为温度
tmp[0]=readbyte(); //低位
tmp[1]=readbyte(); //高位
temp = ((tmp[1]《《4)&0xf0)|((tmp[0]》》4)&0x0f);
if(temp》127)
{
temp = ~temp + 1;
}
return (temp);
}
OpenAI chatGPT太强了:是程序猿失业还是Google搜索被代替?
智慧照明:物联网的试金石
印度是保持芯片需求增长关键 当地员工占比已达25%
高温高压型磁翻板液位计的特点
200米HDMI+IR网线延长器的特性及安装步骤
ds18b20负温度,DS18B20数据处理支持负温度
三星电子美国奥斯汀半导体工厂因寒潮停产损失近23亿!
大学课程 数据分析 实战之K-means算法(1)理论讲解
海洋光学HR2000光纤光谱仪飞往火星
区块链存储属于哪一种存储
使用声像仪时需要注意的7个要点
单模和多模光纤跳线有哪些不同之处?
软体机器人秒变“大力士”,新型人工肌肉可提千倍重量的物体
全方面解读广汽传祺GM8底盘
电压互感器与电流互感器的相同点
凯迪拉克全新CT6上市 通用被逼断臂求生
解读Spring源码中的IOC和AOP部分
LED数字电子钟的制作方法
115"X11G Max成豪宅“新标配”,TCL这新品真够卷的!
如何应对光伏发电对变压器的挑战?