#include <WiFi.h>
#include "DHT.h"
#include <Adafruit_Sensor.h>
#include <WebServer.h>
//Definindo as váriaveis com nome e senha da rede.
String nome_wifi = "Wokwi-GUEST";
String senha = "";
int pinoDHT = 4;
DHT dht(pinoDHT, DHT11);
//inicializando um servidor web
WebServer server(80);
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
dht.begin();
//Chamando a função para configurar e conectar o wifi
conectarWifi();
//DEfinição da rota do servidor web
server.on("/", paginaPrincipal);
//inicializa o servidor web
server.begin();
}
void loop() {
//manipulação das requisições do servidor web
server.handleClient();
//Aguarda um intervalo antes de fazer a proxima leitura
delay(2000);
}
void paginaPrincipal(){
float umidade = dht.readHumidity();
float temperatura = dht.readTemperature();
String html = "<!DOCTYPE html><html><head>";
html += "<title>Temperatura e umidade</title></head><body>";
html += "<h1>Temperatura e umidade</h1>";
html += "<p> Umidade: " + String(umidade) + "% </p>" ;
html += "<p> Temperatura: " + String(temperatura) + "% </p>" ;
html += "</body></html>";
server.send(200, "text/html", html);
}
void conectarWifi(){
//Inicia a conexao WIFI passando como parametro nome e senha da rede
WiFi.begin(nome_wifi, senha);
Serial.print("Conectando");
Serial.println(nome_wifi);
while(WiFi.status() != WL_CONNECTED ){
Serial.print(".");
delay(500);
}
Serial.print("Wifi conectado! Ip obtido");
//Exibir o ip no monitor
Serial.println(WiFi.localIP());
}