#include "freertos/FreeRTOS.h"
#include "driver/gpio.h"
#include "DHTesp.h"
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#define DHT_PIN GPIO_NUM_4 // Pino onde o sensor DHT22 está conectado
int cont = 0;
DHTesp dhtSensor;
TempAndHumidity data;
LiquidCrystal_I2C LCD = LiquidCrystal_I2C(0x27, 16,2); // Endereço I2C do LCD
void tarefa1(void *pvParameter){
while(1){
data = dhtSensor.getTempAndHumidity();
vTaskDelay(1000 / portTICK_PERIOD_MS);
}
}
void tarefa2(void *pvParameter){
while(1){
LCD.clear();
LCD.setCursor(0, 0);
LCD.println("T=" + String(data.temperature) + "C");
LCD.setCursor(0, 1);
LCD.println("U=" + String(data.humidity) + "%");
vTaskDelay(1000 / portTICK_PERIOD_MS);
}
}
void setup(){
LCD.init();
LCD.backlight();
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
xTaskCreate(&tarefa1, "tarefa1", 1024, NULL,5,NULL);
xTaskCreate(&tarefa2, "tarefa2", 4096, NULL,5,NULL);
}
void loop(){
}