Pantalla LCD HD44780 + Arduino

0
332
El próximo contenido ha sido extraído de antiguos artículos en Clase 911, por esta razón ustedes observarán o leerán dos artículos en Panamá Hitek que hacen referencia al mismo LCD pero con informaciones diferentes. En este enlace puedes visitar el artículo: “Uso de Pantalla LCD con Arduino”. Un dispostivo que no puede faltar a la hora de diseñar un proyecto con Arduino es una pantalla. En este caso voy a explicar cómo puedes interactuar con una pantalla de tipo LCD en Arduino.

 

En el mercado existe una gama completa de pantallas LCD, entre tantas de estas he elegido utilizar la que posee el controlador Hitachi HD44780 que es uno de los más comunes que podemos encontrar. Este controlador es el encargado de manejar las entradas de datos, enable, Vee, Vcc entre otras para visualizar caracteres alfanúmericos generalmente en una pantalla monocromática.

Destaco que esta pantalla no sólo se utiliza con Arduino, sino con cualquier microcontrolador de próposito general.

La pantalla que vamos a utilizar puede mostrar un total de 16×2 caracteres en una muestra. En Panamá este tipo de pantalla no son fáciles de conseguir, sin embargo pueden conseguirla por poco menos de 3 USD en tiendas electrónicas por internet. En mi caso he comprado la pantalla a través de ebay. A continuación muestro la lista de materiales que necesitamos para llevar a cabo el tutorial.

  • Nivel: Básico
  • OS utilizado: F17 – 64 bits.

Materiales:

Paso 1: Creando el circuito

Lo primero que hay que hacer es conocer el pinaje de nuestra pantalla, esto dependerá de la pantalla LCD ya que muchos modelos que utiliza el HD44780 no tienen exactamente el mismo pinaje. Para el caso de mi pantalla no fue díficil ya que posee el pinaje en la serigrafía.

Presento el pinaje de la pantalla y su correspondiente conexión al Arduino.

Pinaje de la pantalla LCD HD44780

Pinaje de la pantalla:

  • LCD pin 1 VSS a tierra
  • LCD pin 2 VDD a 5 V
  • LCD pin 3 Constraste a tierra (Utilizar potenciómetro)
  • LCD pin 4 RS hacia el pin 12
  • LCD pin 5 R/W hacia el pin 11
  • LCD pin 6 Enable hacia el pin 10
  • LCD pin 11 hacia el pin 5
  • LCD pin 12 hacia el pin 4
  • LCD pin 13 hacia el pin 3
  • LCD pin 14 hacia el pin 2
  • LCD pin 15 Retroiluminación hacia el pin 13 (Utilizar resistencia)
  • LCD pin 16 Tierra de retroiluminación a tierra

Circuito utilizando pantalla LCD HD44780

Tenemos un total de 16 pines enumerados de izquierda a derecha. Los dos primeros pines se encargan de alimentar la pantalla. Una puesta a tierra y una conexión a 5 V. El arduino UNO posee una salida de voltaje a 5 V, aunque también se puede utilizar un regulador de voltaje a tu gusto que al final te de los 5 V que necesitas.

El tercer pin se encarga de manejar el contraste. Se ha utilizado un potenciómetro de 10 k pero no es necesario utilizar uno específicamente de 10 K, se no tienes a la mano un potenciómetro puedes utilizar una resistencia donde su valor dependerá de qué contraste desees tener, tomando en cuenta que también con esto estas limitando corriente excesivas en tu circuito. Con unade 1.5 k a 2 k es más que suficiente.

En microcontroladores tenemos algo que se conoce como líneas de control, estas son: RS (Reset), EN (Enable), RW(Read/Write) y se encargan decirle a la pantalla cómo debe comportarse. Los pines de control van desde el 4 hasta el 6.

El RS se encarga de indicar en qué modo de operación estará trabajando la pantalla. Existen dos modos: instrucción e información. Si está puesto a 0 lógico quiere decir que está en modo de instrucción. El modo de instrucción se utiliza para indicar directrices de inicialización a la pantalla, como la posición en la cual debe imprimir el caracter, limpiar pantalla, entre otros.

El enable se utiliza para indicarle al LCD si se está enviando información. Generalmente el enable debe colocarse a 1 lógico para que pueda recibir información.

El RW se encarga de decirle a la pantalla LCD si debe leer o escribir. Generalmente en estos proyectos, siempre estamos escribiendo en la pantalla, por lo tanto esta entrada debe estar generalmente puesta a tierra.

Lo mágico de la plataforma Arduino es que no hay necesidad de preocuparse para inicializar la pantalla. Arduino posee una librería llamada Liquid Crystal que se encarga de todo el proceso.

Los pines del 7 al 10 no se utilizan ya que sólo vamos a utilizar cuatro entradas de data, es decir, los pines que van desde el 11 hasta el 14.

En algunas pantalla se incluye dos pines de retroalimentación que se encargan de brindar iluminación a la pantalla. Puedes colocar en el pin 15 una resistencia de 1 k a 5 V para limitar corriente y el pin 16 se conecta a tierra. Con esto bastará para tener una buena retroalimentación.

Paso 2: Creando el programa

Utiliza el siguiente código que muestra dos frases en cada línea de la pantalla haciendo uso de la función Liquid Crystal.

El código es sencillo y nos permite imprimir dos frases, una en cada fila de nuestra pantalla LCD. Si tienen alguna pregunta, no duden en colocar su comentario.

Paso 3: Presentación del proyecto

Añado algunas imágenes del circuito funcionando.

Pantalla LCD HD44780 Pantalla LCD HD44780 Pantalla LCD HD44780

Compartir
Es una chica geek, ingeniera en el área de electrónica y telecomunicaciones. Sus áreas de interés son los sistemas embebidos, microcontrolandores, procesamiendo digital de señales, y programación.