#include "DHT.h"
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
uint8_t DHTPin = 14;
DHT dht(DHTPin, DHTTYPE);
float temperatura;
float umidade;
float ultimatemperatura;
float ultimaumidade;
bool btnOn=0;
bool btnOff=0;
bool led=0;
bool rl1=0;
int tempo=0;
void setup() {
Serial.begin(115200); // inicializa comunicação serial em 115200 bits por segundo
pinMode(4,INPUT); // botão On
pinMode(16,INPUT); // botão Off
pinMode (2,OUTPUT); // led indicador
digitalWrite(2,LOW); // liga led OnOff
pinMode (12,OUTPUT); // saida para rele motor bomba
digitalWrite(12,LOW); // desliga o motor bomba
pinMode (27,OUTPUT); // saida para rele motor bomba
digitalWrite(27,LOW); // desliga o motor bomba
pinMode (26,OUTPUT); // saida para rele motor bomba
digitalWrite(26,LOW); // desliga o motor bomba
pinMode(14, INPUT); // pino de leitura do sensor DHT22
dht.begin(); // inicializa sensor DHT11
}
void loop() {
BotaoOnOff();
tempo++;
if(tempo>=1000)
{
tempo=0; // reseta tempo variavel
sensorDHT22(); //mostra temperatura do sensor
}
}
void sensorDHT22() {
if(led==1)
temperatura = dht.readTemperature(); // Obtém os valores da temperatura
umidade = dht.readHumidity(); // Obtém os valores da umidade
if(temperatura != ultimatemperatura || umidade != ultimaumidade){
ultimatemperatura = temperatura;
ultimaumidade = umidade;
Serial.print("Temperatura=");
Serial.println(temperatura);
Serial.print("Umidade=");
Serial.println(umidade);
}
}
void BotaoOnOff()
{
btnOn=digitalRead(4);
if(btnOn==1)
{
led=1;
digitalWrite(2,led);
}
btnOff=digitalRead(16);
if(btnOff==1)
{
led=0;
digitalWrite(2,led);
}
}
Loading
esp32-devkit-c-v4
esp32-devkit-c-v4