Sie sind auf Seite 1von 6

1/5

INTERNET DE LAS COSAS (IoT)


TALLER 6A MANEJO DE DISPLAY LCD

HARDWARE
Tarjeta Arduino Interface LCD serie (LCD serial int – Sigma
Electrónica Bogotá o Mactrònica) y LCD
Protoboard Opcional Display LCD para conexión serie

Potenciómetro lineal de 10 kilohmios Cables de conexión

1. Manejo de pantallas LCD. Implementar el siguiente circuito. En caso de usar directamente


una LCD con conexión serie, iniciar por el punto 4 y luego realizar puntos restantes. Conectar
la tarjeta de Arduino al PC, abrir el entorno ISE de Arduino, leer, editar (File – New) y
documentar (escribir qué hace cada línea) el siguiente programa, verificarlo (√), corregir
errores si los hay, y luego cargar (→) el programa a la tarjeta.

El circuito se aprecia en la siguiente figura;


2/5

/* Conexión
PIN2 - LCD4 (RS)
PIN3 - LCD5 (R/W)
PIN4 - LCD6 (E)

PIN8 - LCD11 (D4)


PIN9 - LCD12 (D5)
PIN10 - LCD13 (D6)
PIN11 - LCD14 (D7)
*/

#include <LiquidCrystal.h>

LiquidCrystal lcd(2, 3, 4, 8, 9, 10, 11); //(RS,RW, E, D4,D5, D6, D7)

void setup()
{
lcd.begin(16, 2); // Para un LCD 16x02 (columnas,fila)
lcd.setCursor(0, 0); // Ubica el cursor en las coordenadas (0,0)
lcd.print("Curso IoT"); // Escribe el LCD
lcd.setCursor(0, 1); // Se ubica el cursor en la segunda Fila
lcd.print("Manejo Lcd"); // Escribe en el LCD
}

void loop()
{
//Apagar cursor
3/5

lcd.noCursor();
delay(500);

//Apagar encender cursor


lcd.cursor();
delay(500);
}

2. Cargar el siguiente programa. Repetir punto 1. En el siguiente ejemplo se usan las


funciones scroll para desplazar el texto horizontalmente.

/* Conexión
PIN2 - LCD4 (RS)
PIN3 - LCD5 (R/W)
PIN4 - LCD6 (E)

PIN8 - LCD11 (D4)


PIN9 - LCD12 (D5)
PIN10 - LCD13 (D6)
PIN11 - LCD14 (D7)
*/
#include <LiquidCrystal.h>

LiquidCrystal lcd(2, 3, 4, 8, 9, 10, 11); //(RS,RW, E, D4,D5, D6, D7)

void setup() {
lcd.begin(16, 2);

lcd.print("¡ Curso IoT! ");


delay(1000);
}

void loop() {

//mover 13 posiciones (longitud del texto) a la izquierda


//para sacar el texto de la pantalla por la izquierda
for (int positionCounter = 0; positionCounter < 13; positionCounter++) {
lcd.scrollDisplayLeft();
delay(1000);
}

//mover 29 posiciones (longitud del texto + ancho del display) a la derecha


//para sacar el texto de la pantalla por la derecha
for (int positionCounter = 0; positionCounter < 29; positionCounter++) {
lcd.scrollDisplayRight();
delay(1000);
}
4/5

//mover 16 posiciones (29-13) a la izquierda


//para devolver el texto a la posición inicial
for (int positionCounter = 0; positionCounter < 16; positionCounter++) {
lcd.scrollDisplayLeft();
delay(1000);
}

delay(1000);
}

3. Ensayar con diferentes textos pensando en lecturas de sensores.


4. Conexión de pantalla Lcd con interface serie.

INTRODUCCIÓN.
¿QUÉ ES UN CONTROLADOR LCD I2C?
El controlador de LCD I2C es un dispositivo que permite controlar una pantalla a través del bus I2C,
usando únicamente dos cables. Este controlador LCD I2C puede conectarse a cualquier LCD Hitachi
HD44780 y reduce la cantidad de cables necesarios a dos.
Internamente el controlador LCD I2C es una variación del extensor de entradas y salidas digitales
PCF8574, especialmente adaptado para pantallas LCD Hitachi HD44780. Incluso incorporan un
potenciómetro para regular el backlight del LCD.
5/5

ESQUEMA DE MONTAJE
La conexión es sencilla, simplemente se alimenta el módulo desde Arduino mediante GND y 5V y
conectando el pin SDA y SCL de Arduino con los pines correspondientes del controlador LCD I2C.

Mientras que la conexión vista desde el lado de Arduino quedaría así.

En Arduino Uno, SDA es el pin A4 y el SCK el pin A5. Para otros modelos de Arduino consultar la
hoja de especificaciones correspondiente.
6/5

Para poder usar una pantalla LCD I2C se emplea la librería LiquidCrystal_I2C.similar a la librería
LiquidCrystal convencional. El siguiente programa muestra el uso de las funciones de la librería
para mostrar los textos “Curso IoT” y “Lcd - I2C” en una pantalla de 16×02.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2); // Inicia LCD en la dirección 0x27, con 16 caracteres y 2 líneas

void setup()
{
lcd.begin();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Curso IoT");
lcd.setCursor(0, 1);
lcd.print("Lcd – I2C");
delay(2500);
lcd.clear();
}

void loop()
{
}
5. Elaborar diagramas de flujo de programas anteriores.

Das könnte Ihnen auch gefallen