arduino控制dsb18b20传感器

一、实物连接

在这里插入图片描述

二、代码实现


#include <OneWire.h>
#include <DallasTemperature.h>
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 and 0x3F for a 16 chars and 2 line display
#define ONE_WIRE_BUS 7 //ds18b20 module attach to pin7
// Setup a oneWire instance to communicate with any OneWire devices (not just Maxim/Dallas temperature ICs)
OneWire oneWire(ONE_WIRE_BUS);
// Pass our oneWire reference to Dallas Temperature. 
DallasTemperature sensors(&oneWire);

void setup(void)
{

  // start serial port
  Serial.begin(9600);
  sensors.begin(); // initialize the bus
  lcd.init(); //initialize the lcd
  lcd.backlight(); //turn on the backlight
}
void loop(void)
{ 
  // call sensors.requestTemperatures() to issue a global temperature 
  // request to all devices on the bus
  //Serial.print("Requesting temperatures...");
  sensors.requestTemperatures(); // Send the command to get temperatures
  lcd.setCursor(0, 0);
  lcd.print("TemC: "); //print "Tem: " on lcd1602
  lcd.print(sensors.getTempCByIndex(0));//print the temperature on lcd1602
  //Serial.print("Tem: ");
  //Serial.print(sensors.getTempCByIndex(0));
  //Serial.println(" C");
  lcd.print(char(223));//print the unit" ℃ "
  lcd.print("C");
  lcd.setCursor(0, 1);
  lcd.print("TemF: ");
  lcd.print(1.8*sensors.getTempCByIndex(0) + 32.0);//print the temperature on lcd1602
  lcd.print(char(223));//print the unit" ℉ "
  lcd.print(" F");
  //Serial.print("Tem: ");
  //Serial.print(1.8*sensors.getTempCByIndex(0) + 32.0);
  //Serial.println(" F");
  //Serial.println("");
  //Serial.print("Temperature for the device 1 (index 0) is: ");
  //Serial.println(sensors.getTempCByIndex(0));  //print the temperature on serial monitor
}
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: DS18B20是一种常用的数字温度传感器,可以通过一根数据线与Arduino连接。它可以测量-55°C到125°C范围内的温度,并且具有高精度和高分辨率。使用Arduino来读取DS18B20传感器的温度需要使用OneWire库和DallasTemperature库。 ### 回答2: arduino ds18b20温度传感器是一种数字式温度传感器。数字式温度传感器适用于各种工业、商业、办公环境下的温度测量以及各种设备的温度监控。 arduino ds18b20温度传感器是一种针对现代化的微电子设备而特别设计的一种传感器,具有精度高、速度快、模拟度低、功耗少和体积小等优点。其测温范围从-55℃ 到 +125℃,精确度可达到±0.5℃,在同类传感器中属于较高水平。 arduino ds18b20温度传感器最大的特点是采用1-Wire协议传输数据,所需引脚只有一个,从而简化了使用难度和硬件实现。同时,可通过对其内部不同的ROM值区分不同的设备,从而方便设备的管理和使用。 除此之外,arduino ds18b20温度传感器还可以进行温度报警功能,即当温度低于或高于设定的范围时,可利用数字管或者其他适配装置来进行报警提示。 总之,arduino ds18b20温度传感器具有精度高、速度快、模拟度低、功耗少和体积小等优点,适用于各种工业、商业、办公环境下的温度测量以及各种设备的温度监控。同时,其简单易用的特点,也使得该传感器广泛应用于各种基于arduino开发板的DIY制作。 ### 回答3: Arduino DS18B20温度传感器是一种数字温度传感器,它可以与Arduino开发板一起使用来测量环境的温度。这个温度传感器具有一些很棒的特性,例如它只需要一个数字引脚进行通讯,而且可以在一个单独的芯片内处理温度测量。 Arduino DS18B20温度传感器采用的是1-Wire总线通讯协议,因此通过使用仅一个引脚来处理数据和电力,您可以同时连接多个传感器,这使得数据采集非常方便。另外,这个传感器也比较精度高,精度为±0.5°C(在-10°C至+85°C范围内)。 关于Arduino DS18B20温度传感器的使用,有几个需要注意的事项。首先,您需要将传感器的信号引脚连接到Arduino的数字引脚,同时将其连接到电源和地线,以提供传感器所需的电力。然后,您需要下载并安装OneWire库和DallasTemperature库,以便在Arduino IDE中进行编程。 在编写代码方面,您可以使用DallasTemperature库提供的函数来获取传感器的温度,并将其输出到串口监视器中或使用其他通讯方式传递数据。此外,您还可以使用传感器的ROM地址来识别不同的传感器和读取多个温度值,以对同一环境中的不同温度进行测量。 总之,Arduino DS18B20温度传感器是一种非常好用的数字温度传感器,它易于使用且精度高,可以在许多应用中使用。如果您需要测量环境温度,它可能会成为一个很好的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gcc future.c

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值