将温湿度数值显示在显示屏上温度超过25℃红灯亮风扇转 温度低于25℃路灯亮,风扇不转风扇转动lcd显示屏显示温度
时间: 2023-06-13 13:03:23 浏览: 195
这是一个简单的温湿度监测系统,可以通过以下步骤实现:
1. 使用温湿度传感器来读取当前的温度和湿度数值。
2. 将读取到的数值通过LCD显示屏进行显示。
3. 判断当前的温度数值是否超过25℃,如果超过,则控制红灯亮起,并且启动风扇转动。
4. 如果温度没有超过25℃,则控制路灯亮起,并且关闭风扇。
下面是一个简单的代码示例,可以实现上述功能:
```C++
#include <DHT.h>
#include <LiquidCrystal.h>
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(7, 8, 9, 10, 11, 12); //RS, E, D4, D5, D6, D7
int redLED = 3; //红灯
int greenLED = 4; //路灯
int fan = 5; //风扇
void setup() {
pinMode(redLED, OUTPUT);
pinMode(greenLED, OUTPUT);
pinMode(fan, OUTPUT);
lcd.begin(16, 2); //设置LCD显示屏的列数和行数
dht.begin();
}
void loop() {
float temperature = dht.readTemperature(); //读取温度数值
float humidity = dht.readHumidity(); //读取湿度数值
lcd.setCursor(0, 0); //设置LCD光标位置
lcd.print("Temp: ");
lcd.print(temperature);
lcd.print((char)223); //显示温度符号
lcd.print("C ");
lcd.setCursor(0, 1);
lcd.print("Humidity: ");
lcd.print(humidity);
lcd.print("%");
if (temperature > 25) {
digitalWrite(redLED, HIGH); //红灯亮起
digitalWrite(greenLED, LOW); //路灯关闭
digitalWrite(fan, HIGH); //风扇转动
} else {
digitalWrite(redLED, LOW); //红灯关闭
digitalWrite(greenLED, HIGH); //路灯亮起
digitalWrite(fan, LOW); //风扇关闭
}
delay(2000); //等待2秒钟再进行下一次读取
}
```
阅读全文