Arduino大师练成手册 -- 读取DS18B20
硬件连接
连接引脚:
将 DS18B20 的 VCC 引脚连接到 Arduino 的 5V 引脚。
将 DS18B20 的 GND 引脚连接到 Arduino 的 GND 引脚。
将 DS18B20 的 DATA 引脚连接到 Arduino 的数字引脚(例如 D2)。
在 DATA 引脚和 VCC 引脚之间连接一个 4.7kΩ 的上拉电阻。
安装必要的库
在 Arduino IDE 中,安装 OneWire 和 DallasTemperature 库。你可以在库管理器中搜索并安装这些库。
代码示例
以下是一个简单的示例代码,用于读取 DS18B20 传感器的数据:
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 2 // 定义连接 DS18B20 的引脚
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
void setup() {
Serial.begin(9600);
sensors.begin(); // 初始化 DS18B20 传感器
}
void loop() {
sensors.requestTemperatures(); // 请求温度数据
float temperatureC = sensors.getTempCByIndex(0); // 获取温度(摄氏度)
// 检查是否读取失败
if (temperatureC == DEVICE_DISCONNECTED_C) {
Serial.println("读取失败!");
return;
}
// 打印读取到的温度
Serial.print("温度: ");
Serial.print(temperatureC);
Serial.println(" *C");
delay(1000); // 等待 1 秒钟
}
上传代码
将代码上传到 Arduino 板。
查看结果
打开 Arduino IDE 的串口监视器,设置波特率为 9600,你将看到读取到的温度数据。