#include <Arduino_FreeRTOS.h>
#include <DHT.h>
#include <SPI.h>
#include <LiquidCrystal_I2C.h>
void TaskBlink( void *pvParameters );
void setup() {
xTaskCreate(TaskBlink,"task1",128,NULL,1,NULL);
vTaskStartScheduler();
}
void loop() {
}
void TaskBlink(void *pvParameters){
#define DHTPIN 5
#define DHTTYPE DHT22
#define TIMEDHT 1000
LiquidCrystal_I2C lcd(0x27, 16, 2);
DHT dht(DHTPIN, DHTTYPE);
lcd.init();
lcd.backlight();
float t,h, a[7], temp, nhietdo;
dht.begin();
pinMode(8, INPUT);
while(1){
h = dht.readHumidity();
//nhiet do
lcd.setCursor(1,0);
lcd.print("Nhiet do: ");
lcd.setCursor(10,0);
for (int i = 0 ; i < 7; i++){
a[i] = dht.readTemperature();
temp = temp + a[i];
}
nhietdo = temp/5;
lcd.print(nhietdo);
lcd.setCursor(14,0);
lcd.print("*C");
a[6] = 0;
temp = 0;
//Do am
lcd.setCursor(1,1);
lcd.print("Do am: ");
lcd.setCursor(10,1);
lcd.print(h);
lcd.setCursor(13,1);
lcd.print("%");
float max = 0;
for(int i= 0;i<7;i++){
if(max < a[i]){
max = a[i]
}
}
if(digitalRead(8)==HIGH){
lcd.setCursor(10,0);
lcd.print(max);
}
}
}