#include <LiquidCrystal.h>
#include <DHT.h>
#define pinDHT 8
#define model DHT22
DHT dht(pinDHT,model);
float temperatura;
LiquidCrystal lcd(12,11,10,5,4,3,2);
long tempoLcd;
#define pinTrig 6
#define pinEcho 7
long tempoHC;
float distancia;
long inicio;
long b;
void setup() {
// put your setup code here, to run once:
inicio = millis();
pinMode(13, OUTPUT);//blue
pinMode(9, OUTPUT);//red
pinMode(7, OUTPUT);//green
pinMode(14, OUTPUT);//botaovermelho
pinMode(15, OUTPUT);//botaoazul
lcd.begin(16,2);
lcd.print("Olá Estranho!!!");
tempoLcd = millis();
dht.begin();
//LED
pinMode(13, OUTPUT);//blue
pinMode(9, OUTPUT);//red
pinMode(7, OUTPUT);//green
pinMode(14, OUTPUT);//botaovermelho
pinMode(15, OUTPUT);//botaoazul
pinMode(pinTrig, OUTPUT);
pinMode(pinEcho, INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
//HC-SR04
digitalWrite(pinTrig,LOW);
delayMicroseconds(2);
digitalWrite(pinTrig, HIGH);
delayMicroseconds(10);
digitalWrite(pinTrig,LOW);
//LED verde
digitalWrite(7, HIGH);
digitalWrite(9, LOW);
digitalWrite(13, LOW);
temperatura = (18 ≤ temp ≤ 30);//temp ideal
//LED vermelho
digitalWrite(7, LOW);
digitalWrite(9, HIGH);
digitalWrite(13, LOW);
temperatura = (temp < 18);//muito frio
//LED azul
digitalWrite(7, LOW);
digitalWrite(9, LOW);
digitalWrite(13, HIGH);
temperatura = (temp > 30);// muito quente
//DHT 22 - Temperatura
temperatura = dht.readTemperature();
if(millis()- tempoLcd > 3000){
lcd.clear();
lcd.print("Temp: ");
lcd.print(temperatura);
lcd.setCursor(0,1);
tempoLcd = millis();
}
if(distancia < 20 && temperatura >30){
digitalWrite(13, HIGH);
else{
noTone(9);
}
}
else{
digitalWrite(13,LOW);
noTone(9);
}
}