温度传感器DS18B20的电路和能读取正负温度数值的程序介绍

电子说

1.3w人已加入

描述

本文介绍温度传感器DS18B20的电路和能读取正负温度数值的程序(或说明)。日积月累,越来越进步,本文的分享来自查阅与实践,基本已验证成功。

1、什么是DS18B20

DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。

处理器

2、DS18B20有什么用

温度传感器的用处就是测量温度。

一般可以用于电子产品、家用设备、工农业设备等适合其温度范围内的测温应用,如电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。

3、DS18B20有什么优势

DS18B20主要的优势有这几个:

价格便宜,低价位的几元钱就能搞定;

占用IO接口少,只需要耗费一个处理器的IO口即能实现数据传递;

体积小;

拥有相对较高的精度,在-10到+85℃的范围内精度为±0.5℃。

4、DS18B20怎么用?

4.1 应用电路

处理器

DS18B20的电路很简单,除了电源引脚以外,数据引脚就只有一个,把它接到微处理器即可。

4.2 参考程序

处理器

处理器

以上为经过验证的参考程序,在移植时需要注意的是:

⭕以上引脚需要根据实际电路接线的变化而修改;

⭕延时程序很关键。因为单片机接不同的晶振会导致延时变化,所以这里的延时程序不能照搬,要保证延时为6微秒。

⭕以上的程序只识别了正数的温度,如果要测量零下温度,那么需稍作修改。

DS18B20传输出来的数据DS18B20_Temp_data[]是以二进制补码形式存储的,要判断高字节DS18B20_Temp_data[1]的二进制最高位,如为1则温度为负数,如为0则为正数。

如果温度为负数需要将DS18B20_Temp_data[]由二进制补码转为原码,然后换算温度值。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分