/********************************************************************* ——————1.开发环境:Arduino IDE—————————————————————————————————— ——————2.使用开发板型号:Arduino UNO—————————————————————— ——————3.传感器类型:DS18B20数字温度传感器——————————————————————— *********************************************************************/ #include <OneWire.h> #include <DallasTemperature.h> #define ONE_WIRE_BUS 2 // 定义DS18B20数据口连接UNO的2脚 OneWire oneWire(ONE_WIRE_BUS); // 声明连接在单总线上的单总线设备 DallasTemperature sensors(&oneWire); // 声明一个传感器对象 void setup(){ Serial.begin(9600); // 设置串口通信波特率 sensors.begin(); // 初始总线 } void loop(){ sensors.requestTemperatures(); // 向总线上的设备发送温度转换请求,默认情况下该方法会阻塞 Serial.print("此时测量的温度为:"); Serial.print(sensors.getTempCByIndex(0)); // 获取索引号0的传感器摄氏温度数据,并串口输出 Serial.println(" ℃\n"); delay(500); }这段代码该加什么才能让lcd1692显示温度
时间: 2023-07-05 21:22:20 浏览: 142
要让LCD1692显示温度,你需要将LCD模块连接到Arduino,并添加相应的LCD库。然后你需要将获取到的温度值转换为字符串,并将其显示在LCD上。
以下是一份示例代码,你可以根据你的具体情况进行修改:
```
#include <OneWire.h>
#include <DallasTemperature.h>
#include <LiquidCrystal.h>
#define ONE_WIRE_BUS 2
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // 连接LCD模块
void setup() {
Serial.begin(9600);
sensors.begin();
lcd.begin(16, 2); // 设置LCD行数和列数
}
void loop() {
sensors.requestTemperatures();
float tempC = sensors.getTempCByIndex(0);
Serial.print("此时测量的温度为:");
Serial.print(tempC);
Serial.println(" ℃");
// 将温度值转换为字符串
char tempStr[6];
dtostrf(tempC, 4, 1, tempStr);
// 在LCD上显示温度
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Temperature:");
lcd.setCursor(0, 1);
lcd.print(tempStr);
lcd.print(" C");
delay(500);
}
```
注意,这段代码假设LCD模块使用的是16x2字符型液晶显示屏。如果你的LCD模块有所不同,你需要根据具体情况进行修改。
阅读全文