meta data de esta página
¡Esta es una revisión vieja del documento!
3 . Añadir LCD
Continuamos con nuestro proyecto y ahora vamos a añadirle un LCD del tipo LCD KEY PAD SHIELD de 16×2 líneas
 Este tipo de LCD ya viene preparada para conectar directamente encima del arduino Uno o del Mega, pero en nuestro caso al utilizar el nano 
tenemos que hacer las conexiones siguientes:
Este tipo de LCD ya viene preparada para conectar directamente encima del arduino Uno o del Mega, pero en nuestro caso al utilizar el nano 
tenemos que hacer las conexiones siguientes:
El esquema de conexión sería:
| LCD | Arduino Nano | 
|---|---|
| A0 | A0 | 
| D4 | D4 | 
| D5 | D5 | 
| D6 | D6 | 
| D7 | D7 | 
| D8 | D8 | 
| D9 | D9 | 
El código:
// wiki.intrusos.info
// modificacion del Sketch de prueba para sensores DHT humedad / temperatura de  www.internetdelascosas.cl
// Escrito por @joniuz basado en el sketch de Ladyada
// v1.3 añadimos lcd
// Libreria para Sensores DHT
#include "DHT.h"
//libreia LCD
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7); //    ( RS, EN, d4, d5, d6, d7)
#define DHTPIN 2     // Pin del Arduino al cual esta conectado el pin 2 del sensor
// Descomentar segun el tipo de sensor DHT usado
#define DHTTYPE DHT11   // DHT 11 
// Inicializa el sensor
DHT dht(DHTPIN, DHTTYPE);
//Definimos a que patilla esta conectado el FC-28
const int sensorPin = A1;
// Configura Arduino 
void setup() {
  Serial.begin(9600); 
  Serial.println("Medir temperatura, humedad y humedad tierra\n\n");
  lcd.begin(16, 2);
  dht.begin();
}
void loop() {
  // Espera dos segundos para realizar la primera medición.
  delay(2000);
  // Lee los datos entregados por el sensor, cada lectura demora 250 milisegundos
  // El sensor muestrea la temperatura cada 2 segundos}
  // Obtiene la Humedad
  float h = dht.readHumidity();
  // Obtiene la Temperatura en Celsius
  float t = dht.readTemperature();
  //obtiene la humedad de la tierra
  int humedadtierra = analogRead(sensorPin);
  lcd.setCursor(0, 0);
  lcd.print("Humedad: ");
  lcd.print(h);
  lcd.print("% ");
  lcd.setCursor(0, 1);
  lcd.print("H. Tierra: ");
  lcd.print(humedadtierra);
  lcd.print("% ");
  //Segun la tecla pulsada mostramos temperatura o humedad
  int boton;
  boton= analogRead (0);
  if (boton < 200) {
    lcd.setCursor(0, 0);
    lcd.print("Humedad: ");
    lcd.print(h);
    lcd.print("% ");
  }
  else if (boton < 400){
    lcd.setCursor(0, 0);
    lcd.print("Temp: ");
    lcd.print(t);
    lcd.print(" *C ");
  }
  delay(1000); // retardo un segundo entre lecturas.
}
 
 
