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

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

3天内不再提示

如何使用DS18B20制作办公室温度计

454398 来源:wv 2019-08-30 10:28 次阅读

步骤1:需要的硬件

DS18B20温度传感器

重力:带有RGB背光显示的I2C 16x2 Arduino LCD

DFRduino UNO R3(类似于Arduino UNO)

重力:Arduino V7.1的IO扩展屏蔽

步骤2:零件图

步骤3:电路连接图

步骤4:操作结果

当室温低于25°C时,屏幕显示绿色。这个温度是否适合人们?

当室温超过25°C且低于30°C时,屏幕显示黄色。颜色表明温度升高,现在可以使用风扇。

当室温超过30°C时,屏幕显示红色。风扇对于如此炎热的变暖没有任何意义,只有空气条件才能帮助你在夏天生存。我用3D打印机做了一个外壳,以保护和美化内部零件。

步骤5:3D装配图

第6步:3D草图设计

第7步:装配图像

如果你对此项目感兴趣,您可以在最后一页下载3D打印文件。你也可以设计自己的私人外壳。关于编程,你也可以添加时间显示功能。所以它可以是温度计和时钟的组合。您的想法将不胜感激。

第8步:代码

#include

#include

#include “DFRobot_RGBLCD.h”

int DS18S20_Pin = 2; //DS18S20 Signal pin on digital 2

DFRobot_RGBLCD lcd(16,2); //16 characters and 2 lines of show

//Temperature chip i/o

OneWire ds(DS18S20_Pin); // on digital pin 2

void setup(void)

{

Serial.begin(9600);

lcd.init();

lcd.setRGB(0, 255, 0);

lcd.setCursor(1, 0 );

lcd.print(“Tep: ”);

}

void loop(void)

{

float temperature = getTemp();

delay(1000);

lcd.setCursor(5,0);

lcd.print(temperature);

if(temperature《25)

{

lcd.setRGB(0, 255, 0);

}

else if (temperature《30)

{

lcd.setRGB(255, 215, 0);

}

else

{

lcd.setRGB(255, 0, 0);

}

lcd.setCursor(10, 0 );

lcd.write(0xdf); //display°

lcd.print(‘C’);

delay(100);

delay(100); //just here to slow down the output so it is easier to read

}

float getTemp()

{

//returns the temperature from one DS18S20 in DEG Celsius

byte data[12];

byte addr[8];

if ( !ds.search(addr)) {

//no more sensors on chain, reset search

ds.reset_search();

return -1000;

}

ds.reset();

ds.select(addr);

ds.write(0x44,1); // start conversion, with parasite power on at the end

byte present = ds.reset();

ds.select(addr);

ds.write(0xBE); // Read Scratchpad

for (int i = 0; i 《 9; i++) { // we need 9 bytes

data[i] = ds.read();

}

ds.reset_search();

byte MSB = data[1];

byte LSB = data[0];

float tempRead = ((MSB 《《 8) | LSB); //using two‘s compliment

float TemperatureSum = tempRead / 16;

return TemperatureSum;

}

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

    关注

    10

    文章

    779

    浏览量

    80926
  • 温度计
    +关注

    关注

    6

    文章

    405

    浏览量

    78491
收藏 人收藏

    评论

    相关推荐

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

    第二十九章 DS18B20实验 本章,我们将介绍ESP32-S3如何读取外部温度传感器的温度,来得到较为准确的环境温度。我们将学习单总线技术,通过它来实现ESP32-S3和外部
    发表于 12-25 09:43

    CW32模块使用 DS18B20温度传感器

    DS18B20数字温度传感器提供9位至12位精度的温度测量,并具有非易失性用户可编程上下触发点报警功能。DS18B20通过单总线通信,根据定义,只需要一条数据线(和地线)即可与单片机通
    的头像 发表于 11-26 17:47 269次阅读
    CW32模块使用 <b class='flag-5'>DS18B20</b><b class='flag-5'>温度</b>传感器

    DS18B20温度传感器的工作原理和硬件设计

    通过本文可以了解DS18B20温度传感器工作原理、硬件设计、DS18B20单总线接口驱动编写。
    的头像 发表于 10-24 14:38 2670次阅读
    <b class='flag-5'>DS18B20</b><b class='flag-5'>温度</b>传感器的工作原理和硬件设计

    ds18b20传感器的使用方法

    DS18B20是一种广泛使用的数字温度传感器,它基于1-Wire(单总线)通信协议。这种传感器因其高精度、易用性和低成本而受到欢迎。 DS18B20传感器简介 DS18B20是由Max
    的头像 发表于 10-18 14:52 909次阅读

    ds18b20温度传感器怎么接线

    DS18B20是一种广泛使用的数字温度传感器,它基于1-Wire(一线)通信协议工作。这种传感器因其高精度、易用性和低成本而受到欢迎。 DS18B20传感器引脚介绍 DS18B20有三
    的头像 发表于 10-18 14:50 1545次阅读

    ds18b20温度传感器如何使用

    DS18B20是一款广泛使用的数字温度传感器,它具有高精度、低功耗和易于使用的特点。 DS18B20温度传感器简介 DS18B20是由Max
    的头像 发表于 09-03 16:51 709次阅读

    ds18b20温度传感器是什么类型

    DS18B20温度传感器是一种数字温度传感器,它属于单总线(One-Wire)数字温度传感器类型。这意味着它仅需要一根数据线(加上电源线和地线,共三根线)就能与微处理器或其他数字电路进
    的头像 发表于 09-03 16:46 1093次阅读

    ds18b20温度传感器和dht11的区别

    DS18B20和DHT11都是常用的温度和湿度传感器,它们在许多项目和应用中都有广泛的应用。 1. 工作原理 DS18B20 DS18B20是一种数字
    的头像 发表于 09-03 16:44 1826次阅读

    STC32和STC8H驱动DS18B20测温串口发送数据

    STC32G12K128 和 STC8H8K64U 驱动 DS18B20 模块,采集环境温度并通过串口发送数据至电脑
    的头像 发表于 06-27 16:27 914次阅读
    STC32和STC8H驱动<b class='flag-5'>DS18B20</b>测温串口发送数据

    基于51单片机DS18B20温度采集控制风扇设计

    本资源内容概要:       这是基于51单片机DS18B20温度采集控制风扇设计包含了电路图源文件(Altiumdesigner软件打开)、C语言程序源代码(keil软件打开)、元件清单
    发表于 06-26 10:43 0次下载

    基于51单片机DS18B20温度采集1602液晶显示报警设计

    本资源内容概要:       这是基于51单片机DS18B20温度采集1602液晶显示报警设计包含了电路图源文件(Altiumdesigner软件打开)、C语言程序源代码(keil软件打开)、元件
    发表于 06-25 10:16 0次下载

    DS18B20温度传感器工作原理

    DS18B20以其独特的工作原理、卓越的技术参数和广泛的应用场景,成为了市场的明星产品。 深入了解DS18B20的工作原理 DS18B20温度传感器的工作原理基于热敏电阻的特性和数字
    的头像 发表于 06-19 16:01 1335次阅读

    基于STC8H8K64U和DS18B20温度采集和LabVIEW上位机显示

    之前通过 STC 单片机和 DS18B20 实现了环境温度采集并串口显示,后面进一步想要实现温度的实时监测和数据记录保存,因此编写了 LabVIEW 程序,修改了部分单片机程序代码。经过实验验证
    发表于 04-08 12:28

    DS18B20温度传感器的优缺点

    可编程寄存器:DS18B20内部具有可编程寄存器,允许用户对其进行配置和控制,以满足不同的应用需求。
    发表于 04-04 11:39 4564次阅读

    基于51单片机的多点温度检测网络,DS18B20传感器,代码,仿真,原理图等资料

    设计概述 基于DS18B20的多点温度测量监控系统设计,以AT89C52单片机作为主控制器,不断循环读取4组DS18B20(T1、T2、T3和T4)温度数据,同时使用LCD1602液晶
    发表于 03-24 22:08