1
电子说
本文介绍温度传感器DS18B20的电路和能读取正负温度数值的程序(或说明)。日积月累,越来越进步,本文的分享来自查阅与实践,基本已验证成功。
DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。
温度传感器的用处就是测量温度。
一般可以用于电子产品、家用设备、工农业设备等适合其温度范围内的测温应用,如电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。
DS18B20主要的优势有这几个:
价格便宜,低价位的几元钱就能搞定;
占用IO接口少,只需要耗费一个处理器的IO口即能实现数据传递;
体积小;
拥有相对较高的精度,在-10到+85℃的范围内精度为±0.5℃。
DS18B20的电路很简单,除了电源引脚以外,数据引脚就只有一个,把它接到微处理器即可。
以上为经过验证的参考程序,在移植时需要注意的是:
⭕以上引脚需要根据实际电路接线的变化而修改;
⭕延时程序很关键。因为单片机接不同的晶振会导致延时变化,所以这里的延时程序不能照搬,要保证延时为6微秒。
⭕以上的程序只识别了正数的温度,如果要测量零下温度,那么需稍作修改。
DS18B20传输出来的数据DS18B20_Temp_data[]是以二进制补码形式存储的,要判断高字节DS18B20_Temp_data[1]的二进制最高位,如为1则温度为负数,如为0则为正数。
如果温度为负数需要将DS18B20_Temp_data[]由二进制补码转为原码,然后换算温度值。
全部0条评论
快来发表一下你的评论吧 !