0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单线数字温度传感器DS18B20以及ArduinoDS18B20接口的工作原理

454398 来源:工程师吴畏 2019-07-30 10:55 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

温度传感器是非常重要的设备,因为它们可以帮助我们测量,监控和维持房间,仪器或设备的温度。

以前我们几乎使用了非常流行的LM35温度传感器每个温度相关的项目。我们现在将尝试使用名为DS18B20的不同温度传感器来测量使用Arduino的温度。

相关项目:基于Arduino的数字温度计

DS18B20温度传感器概述

DS18B20是1-Wire(单线)温度传感器由Maxim Integrated生产。它提供摄氏度的温度测量,分辨率为9位至12位。

DS18B20温度通过1-Wire接口或1-Wire总线交换信息,由Dallas Semiconductor开发的系统。在1-Wire接口中,通信只需要一根电线(从技术上讲,您需要两根电线:一根数据线和一根GND线)。

DS18B20温度传感器的另一个重要特性是每个DS18B20传感器都带有一个特定于该传感器的64位串行代码。

使用此功能独特的代码,您可以在同一个1-Wire总线上连接多个DS18B20传感器,并使用单个控制器访问信息。这种类型的设置在多个DS18B20传感器分布在很大区域的情况下非常有用。

以下是DS18B20数字温度计的一些主要功能。

使用只需一条线路进行数据传输的1-Wire接口。

9位到12位的可编程分辨率-bit。

它可以测量-55 0 C到+125 0 C范围内的温度。/span》

提供TO-92,8引脚SO和8引脚μSOP等不同封装。

DS18B20的引脚图

下图显示了DS18B20数字温度传感器的TO-92封装的引脚图。

DS18B20温度传感器的引脚说明

As您可以在上面的引脚图中看到,DS18B20传感器由三个引脚组成,即:V DD ,DQ和GND。

V DD :这是电源引脚。当使用寄生供电模式时,它必须接地(稍后会详细介绍)。

DQ:这是数据输入/输出引脚。它是一个开漏引脚,必须拉高。它以寄生供电模式提供电源。

GND:这是接地引脚。

DS18B20的框图

下图显示了DS18B20温度传感器的功能框图。它由一个电源电路,64位ROM,内存控制器,主温度传感器和一个Scratchpad区域组成,该区域有一个温度寄存器和一些其他寄存器,用于存储配置和报警高低触发。

64位ROM存储设备的唯一串行代码。温度传感器的数字输出存储在Scratchpad的2字节温度寄存器中。暂存器还包括1-Byte for Alarm HIGH Trigger寄存器,Alarm LOW Trigger寄存器和Configuration寄存器。

使用配置寄存器,您可以设置数字的分辨率输出从9位到12位之间的任何位置。为了保留配置中存储的数据,报警高电平和报警低电平寄存器,即使器件断电,这三个寄存器也实现为EEPROM。

为电源供电DS18B20传感器

有两种方法可以为DS18B20传感器供电。一种方法是将外部电源连接到传感器的V DD 引脚的传统方式。这个操作没有什么特别之处。

启动DS18B20传感器的第二种方法是让事情变得有趣。为传感器供电的第二种方式称为寄生电源模式,无需外部电源。

在寄生供电模式下,DS18B20在拉高时从DQ引脚获取电源。当1-Wire总线为高电平时,它为DS18B20供电。当总线为低电平时,寄生电源电容(C PP )中存储的电荷将为传感器供电。在寄生供电模式下,V DD 引脚连接到GND。

DS18B20与Arduino接口

在本项目中,我们将了解如何将DS18B20温度传感器与Arduino连接。由于传感器基于1-Wire通信,因此Arduino和DS18B20之间只需要一根线。

Arduino DS18B20接口电路图

下图显示了Arduino DS18B20接口的电路图。

所需组件

Arduino UNO

DS18B20数字温度传感器

16×2 LCD显示器

10KΩ电位器

4.7KΩ电阻器(1/4瓦)

330Ω电阻(1/4瓦)

5mm LED

连接电线

面包板

电源

电路设计

Arduino DS18B20接口电路的设计非常简单。您只需将传感器的V DD 和GND连接到+ 5V和GND,并将传感器的DQ引脚连接到任何一个数字I/O引脚(它连接到数字) I/O引脚8)。

使用4.7KΩ电阻将DQ引脚拉高。

因为我们需要为了查看测量温度,我已将一个简单的16X2 LCD显示器连接到Arduino。

代码

项目代码如下。您需要为Arduino下载两个库:OneWire和DallasTemperature。您可以从以下链接下载这些库:下载OneWire Library 和下载DallasTemperature Library 。

工作Arduino DS18B20接口

项目的工作非常简单。 Arduino通过1-Wire接口与DS18B20通信,并从传感器中提取温度信息。提取的信息显示在16X2 LCD显示屏上。

应用

DS18B20温度传感器可用于各种应用,例如:

温度计

温度敏感系统

消费类电子产品

工业设备

恒温器

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 温度传感器
    +关注

    关注

    48

    文章

    3105

    浏览量

    162437
  • DS18B20
    +关注

    关注

    10

    文章

    782

    浏览量

    83075
  • Arduino
    +关注

    关注

    190

    文章

    6515

    浏览量

    195933
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    分享1-Wire接口数字温度传感器IC型号

    英尚微电子通过研究设计,开发出一种适用于温度测量的简洁高效的嵌入式测温方案。方案采用1-Wire接口数字温度传感器,以其简洁高效的特性,成
    的头像 发表于 12-02 16:34 365次阅读
    分享1-Wire<b class='flag-5'>接口</b><b class='flag-5'>数字</b><b class='flag-5'>温度</b><b class='flag-5'>传感器</b>IC型号

    要做一个DS18B20的读取程序,单总线需要配置为输入或者输出,怎么配置好?

    目前要做一个DS18B20的读取程序,单总线需要配置为输入或者输出。怎么配置好
    发表于 11-18 06:30

    单总线接口数字温度传感器芯片GX18E20

    成为分布式测温系统的核心选择。GX18E20作为一款基于单总线协议的数字温度传感器芯片,在实现-55℃至+125℃宽范围测温的同时,支持多点组网与报警设定,适用于HVAC、粮情监测、工
    的头像 发表于 11-11 15:22 139次阅读

    使用18b20软件包报错怎么解决?

    In file included from ../packages/ds18b20-latest/src/dallas_ds18b20_sensor_v1.c:12:0: C
    发表于 10-14 06:49

    低频段 LNA 前端模块(B26/B5/B18/B19、B8、B20B12/13/17、B28A、B28BB29) skyworksinc

    电子发烧友网为你提供()低频段 LNA 前端模块(B26/B5/B18/B19、B8、B20
    发表于 06-27 18:32
    低频段 LNA 前端模块(<b class='flag-5'>B</b>26/<b class='flag-5'>B</b>5/<b class='flag-5'>B18</b>/<b class='flag-5'>B</b>19、<b class='flag-5'>B</b>8、<b class='flag-5'>B20</b>、<b class='flag-5'>B</b>12/13/17、<b class='flag-5'>B</b>28A、<b class='flag-5'>B28B</b> 和 <b class='flag-5'>B</b>29) skyworksinc

    单片机实例项目:DS18B20温度传感器

    单片机实例项目:DS18B20温度传感器,推荐下载!
    发表于 06-03 20:59

    传感器有哪些类型?有哪些接口

    传感器的类型和接口种类繁多,以下是一些常见的分类和接口方式: 传感器类型 温度传感器:用于测量
    的头像 发表于 05-22 09:33 1.1w次阅读

    血泪教训总结:Air780EPM的LuatOS二次开发——OneWire协议调试注意事项

    的OneWire通信,大幅提升项目开发效率。 一、LuatOS 及 OneWire 说明   LuatOS 支持 OneWire 通信协议,本文以 DS18B20 温度传感器和 Air780EPM 搭配
    的头像 发表于 03-20 17:52 905次阅读
    血泪教训总结:Air780EPM的LuatOS二次开发——OneWire协议调试注意事项

    最佳实践指南:Air780EPM的LuatOS二次开发——OneWire协议调试的注意事项

    在物联网设备开发中,精准且稳定的数据传输是构建智能系统的核心。 一、LuatOS 及 OneWire 说明   LuatOS 支持 OneWire 通信协议,本文以 DS18B20 温度传感器
    的头像 发表于 03-17 16:57 577次阅读
    最佳实践指南:Air780EPM的LuatOS二次开发——OneWire协议调试的注意事项

    基于FPGA的DS18B20数字温度传感器测温实例

    本文将使用三段式状态机(Moore型)的写法来对DS18B20进行测温操作,以便了解DS18B20和熟悉三段式状态机的写法。
    的头像 发表于 03-17 11:06 2082次阅读
    基于FPGA的<b class='flag-5'>DS18B20</b><b class='flag-5'>数字</b><b class='flag-5'>温度</b><b class='flag-5'>传感器</b>测温实例

    DS18B20实时温度传感器中文资料

    DS18B20 是一种单总线数字温度传感器,它被广泛应用于各种领域,例如气象监测、室内温度控制、工业自动化等。
    发表于 02-28 17:02 5次下载

    基于FPGA的温度传感器(ds18b20)驱动设计

    数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。 DS18B20
    的头像 发表于 01-16 14:08 2042次阅读
    基于FPGA的<b class='flag-5'>温度</b><b class='flag-5'>传感器</b>(<b class='flag-5'>ds18b20</b>)驱动设计

    【正点原子STM32H7R3开发套件试用体验】DS18B20、DHT11温湿度采集

    环境温湿度数据的主要流程和关键代码,并对这两款常见传感器进行了介绍。 DS18B20 DS18B20 数字温度计是 DALLAS 公司生产的
    发表于 01-01 11:16

    《DNESP32S3使用指南-IDF版_V1.6》第二十九章 DS18B20实验

    DS18B20简介DS18B20是由DALLAS半导体公司推出的一种“单总线”接口温度传感器,实物图如下图所示。图29.1.1.1
    发表于 12-25 09:43

    DS18B20数字温度传感器资料包

    111
    发表于 12-16 11:28 4次下载