#include <DHT.h>
#include <WiFi.h>
#include <ThingSpeak.h>
#define DHTPIN 13
#define DHTTYPE DHT22
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
unsigned long myChannelNumber = 2549032;
const char * myWriteAPIKey = "ZRX7D59HRL9767W3";
WiFiClient client;
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
delay(1000);
dht.begin();
}
void loop() {
if(WiFi.status() != WL_CONNECTED){
Serial.print("Attempting to connect to SSID: ");
Serial.println(ssid);
while(WiFi.status() != WL_CONNECTED){
WiFi.begin(ssid, pass);
Serial.print(".");
delay(5000);
}
Serial.println("\nConnected.");
}
WiFi.mode(WIFI_STA);
ThingSpeak.begin(client);
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
Serial.print("Nhiet do: ");
Serial.print(t);
Serial.print("*C ");
Serial.print("Do am: ");
Serial.print(h);
Serial.println("% ");
int mq135 = analogRead(34);
Serial.print("KK : ");
Serial.println(mq135);
ThingSpeak.setField(1, t);
ThingSpeak.setField(2, h);
int x = ThingSpeak.writeFields(myChannelNumber, myWriteAPIKey);
if(x == 200){
Serial.println("Channel update successful.");
}
else{
Serial.println("Problem updating channel. HTTP error code " + String(x));
}
Serial.print("Complete Update\n");
delay(200);
}