#include <dht.h>
const int r = 7;
const int g = 6;
const int b = 5;
const int dhtPin = 4;
dht DHT;
void setup() {
Serial.begin(115200);
pinMode(r, OUTPUT);
pinMode(g, OUTPUT);
pinMode(b, OUTPUT);
}
void loop() {
DHT.read22(dhtPin);
double temp = DHT.temperature;
Serial.println(temp);
double hum = DHT.humidity;
Serial.println(hum);
if (temp < 0 || temp > 35 || hum < 50 || hum > 90) {
out(255, 0, 0);
}
else {
out (0, readTemp(temp), readHum(hum));
}
delay(100);
}
int readTemp(int temp) {
return map(temp, -40, 80, 0, 255);
}
int readHum(int hum) {
return map(hum, 0, 100, 0, 255);
}
void out(int red, int green, int blue) {
analogWrite(r, red);
analogWrite(g, green);
analogWrite(b, blue);
}