Como manejar un Display de 16 segmentos

En este proyecto, la idea principal es mostrar como utilizar un display de 16 segmentos, en el cual se podrá visualizar un mensaje a través de caracteres ASCII con ayuda de un microcontrolar, en este caso un PIC16F84A.

Inicialmente solo había implemento la tabla de caracteres ASCII para mostrarlos, pero me di cuenta de que quedaba espacio para poder mostrar no solo los caracteres ASCII, sino además, un mensaje de texto que se pudiera guardar en la memoría eeprom del microcontrolador.

Este desarrollo se basa en el diagrama siguiente:

schematic

Una versión en pdf la puedes descargar en la sección de attachments.

Este sistema es alimentado a 5 Volts.

El circuito ya armado sin el display se muestra en la fig 1 y con el display montado en la fig 2.

imagen 1

Imagen donde se pueden observar los integrados PIC16F84A y el 74HC374N

Figura 2. Display de 16 segmento montado sobre su base

Imagen con el display de 16 segmentos montado en su base.

imagen 3

Imagen donde se pueden observar las terminales de alimentaciòn de voltaje y el jumper 1.

El siguiente video muestra como funciona este circuito sin el jumper puesto, es decir, mostrando los caracteres alfanuméricos del código ASCII.

En este video se ve el mensaje grabado en el microcontrolador, una vez que el jumper se ha colocado en su lugar.

El mensaje a visualizar se debe grabar en la memoria eeprom del microcontrolador, puede ser cualquier texto alfanumérico terminado en punto. En el ejemplo anterior el texto almacenado fue "Hola Beto ."

El archivo para cargar en el microcontrolador es el display16.hex que lo puedes descargar de la sección attachments.

Inicialmente el código viene con el mensaje "Hola Beto.", pero para cambiar el mensaje solo sigue las siguientes instrucciones:

Como cambiar el mensaje a mostrar en el microcontrolador!

Utilizando el PicKit 2:

En la siguiente figura se ve que al cargar el archivo Display16.hex al programa PicKit2 en la ventana EEPROM Data podemos observar el texto que se mostrara al encender nuestro sistema y tener puesto el jumper 1.

pk2_load

En la ventana vemos tanto el código ASCII del mensaje en hexadecimal como el mensaje mismo.

La tarea difícil aquí es que debemos modificar el código hexadecimal, no el mensaje, es decir, para poner una 'e' en el mensaje después de la 'H' debemos cambiar el código '6F' por el código '65'.

En la siguiente figura podemos ver como quedo el código modificado para mostrar el mensaje "Hello World ". No se les olvide que el texto debe terminar con un punto (código '2E'), Suerte!

Utilizando el IC - Prog:

Al cargar el archivo Display16.hex se ven las siguientes ventanas:

en la ventana de Eeprom Data podemos ver el texto a guardar.

ic edited

en esta imagen se puede ver el texto modificado, en esta aplicación es mas facil modificar el texto a guardar en la memoria EEPROM del microcontrolador, ya que permite modificarlo directamente con el teclado, ya que nosotros escribimos y el editor automáticamente actualiza el código ASCII a almacenar.

Si utilizas algún otro programador, este debe tener alguna manera de que puedas editar el texto a almacenar en la memoria EEPROM.

Espero disfrutes armando este proyecto y cambiando el texto a tu gusto.

Contacto y comentarios.

Tus dudas y comentarios seran bien recibidos en leedeflores@gmail.com

Intentaremos contestar tus dudas e inquietudes.

Número de visitas desde septiembre 2011

contadores web