#include <ArduinoJson.h>
#include <Adafruit_GFX.h>
#include <Adafruit_ILI9341.h>
#include <Wire.h>
//#include <LiquidCrystal_I2C.h>
//LiquidCrystal_I2C LCD = LiquidCrystal_I2C(0x27, 16, 2);
#include "DHT.h"
const int DHT1PIN = 25;
const int DHT2PIN = 33;
const int DHT3PIN = 32;
const int DHT4PIN = 35;
const int DHT5PIN = 34;
#define DHTTYPE DHT22
#define DHTTYPE DHT22
#define DHTTYPE DHT22
#define DHTTYPE DHT22
#define DHTTYPE DHT22
DHT dht(DHT1PIN, DHTTYPE);
DHT dht(DHT2PIN, DHTTYPE);
DHT dht(DHT3PIN, DHTTYPE);
DHT dht(DHT4PIN, DHTTYPE);
DHT dht(DHT5PIN, DHTTYPE);
//const char* ssid = "Wokwi-GUEST";
//const char* password = "";
#define BTN_PIN 5
#define TFT_DC 2
#define TFT_CS 15
const int buz = 27;
const int red = 26;
const int green = 14;
const int blue = 13;
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
//const String url = "https://v2.jokeapi.dev/joke/Programming";
void setup() {
pinMode(BTN_PIN, INPUT_PULLUP);
pinMode(buz, OUTPUT);
pinMode(red, OUTPUT);
pinMode(green, OUTPUT);
pinMode(blue, OUTPUT);
tft.begin();
tft.setRotation(1);
Serial.begin(115200);
dht.begin();
tft.setRotation(1);
tft.fillScreen(ILI9341_WHITE);
tft.setTextColor(ILI9341_RED);
tft.setTextSize(3);
tft.println("SSMIET");
tft.println("ECE-II YEAR");
tft.println("PALLAVI");
//tft.print("Connecting to WiFi");
}
void loop(){
delay(2000);
tft.fillScreen(ILI9341_WHITE);
float h = dht.readHumidity();
float t = dht.readTemperature();
float f = dht.readTemperature(true);
if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println(F("Failed to read from DHT sensor!"));
return;
}
float hif = dht.computeHeatIndex(f, h);
float hic = dht.computeHeatIndex(t, h, false);
tft.setCursor(0, 0);
tft.setTextColor(ILI9341_WHITE);
tft.println(F(" DHT22 SENSOR "));
//tft.setCursor(0,1);
tft.setTextColor(ILI9341_WHITE);
tft.print(h);
tft.print(F("% "));
tft.print(t);
tft.print(char(223));
tft.println(F("C"));
if(t<25){
tft.setTextColor(ILI9341_GREEN);
tft.println("FIRE");
tone(buz, 31);
digitalWrite(red, LOW);
digitalWrite(green,HIGH);
digitalWrite(blue,LOW);
delay(2000);
digitalWrite(red, LOW);
}
else if(t<40 && t>25){
tft.setTextColor(ILI9341_BLUE);
tft.println("MODERATE");
noTone(buz);
digitalWrite(red, LOW);
digitalWrite(green,LOW);
digitalWrite(blue,HIGH);
delay(1000);
}else{
tft.setTextColor(ILI9341_RED);
tft.println("COLD");
noTone(buz);
digitalWrite(red, HIGH);
digitalWrite(green,LOW);
digitalWrite(blue,LOW);
delay(1000);
}
//LCD.print(f);
// LCD.setCursor(3,1) ;
// LCD.print(F("°F Heat index: "));
// LCD.print(hic);
// LCD.print(F("°C "));
// LCD.print(hif);
// LCD.println(F("°F"));
delay(1000);
}