#include "DHT.h" //cargamos la librería DHT
#define DHTPIN 9 //Seleccionamos el pin en el que se //conectará el sensor
#define DHTTYPE DHT11 //Se selecciona el DHT11 (hay //otros DHT)
DHT dht(DHTPIN, DHTTYPE); //Se inicia una variable que será usada por Arduino para comunicarse con el sensor
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int analogPin = A0;
int value; //variable que almacena la lectura analógica raw
int position; //posicion del potenciometro en tanto por ciento
unsigned int actual = 0; //contador para eliminar delay
unsigned int anterior = 0;
unsigned int anterior2 = 0;
void setup() {
anterior = millis(); // igualamos anterior a la funcion millis cuando inicie el código
anterior2 = millis(); // igualamos anterior2 a la funcion millis cuando inicie el código
//Inicializamos la comunicación serial
Serial.begin(9600);
//Escribimos por el monitor serie mensaje de inicio
//Serial.println("Conexion Correcta");
dht.begin(); //Se inicia el sensor
lcd.begin(20,4);
lcd.setCursor(2, 0);
lcd.print("Inicializando..."); //Imprimimos un mensaje inicial
lcd.setCursor(11, 3);
lcd.print("By Sergio");
delay(2000); //Esperamos 2 segundos
lcd.clear(); //Borramos lo que pone a la pantalla
}
void loop() {
int t = dht.readTemperature(); //lee la temperatura
int h = dht.readHumidity(); //lee la humedad
value = analogRead(analogPin); // realizar la lectura analógica raw
position = map(value, 0, 1023, 0, 100); // convertir a porcentaje
lcd.setCursor(4, 0);
lcd.print("CNC CO2 k40"); //Imprimimos un mensaje en pantalla
lcd.setCursor(0, 1);
lcd.print("Potencia");
lcd.setCursor(0, 2);
lcd.print("Temperatura");
lcd.setCursor(0, 3);
lcd.print("Humedad");
actual = millis(); //igualamos actual a millis
if(actual - anterior > 500) // hacemos la funcion .. si actual menos anterior es mayor que 500
{
lcd.setCursor(16, 1);
lcd.print(position);
lcd.print("%");
anterior = millis();
}
if(actual - anterior2 > 4000) // hacemos la funcion .. si actual menos anterior es mayor que 4000
{
lcd.setCursor(16, 2);
lcd.print(t);
lcd.print("C");
lcd.setCursor(16, 3);
lcd.print(h);
lcd.print("%");
anterior2 = millis();
}
}