LCD Serial – 16F84A
Mi primer proyecto con PIC’s. Se trata de un interfaz serie (UART) para comunicar con un LCD de matriz (de los basados en el controlador de Hitachi). Utiliza un PIC 16F84A que recibe los datos serie a traves de una patilla (2400Bps, 8N1), y se los manda al LCD utilizando el protocolo de 4 bit de datos, con lo que todavía quedan patillas libres por si se quisiera hacer otra cosa, (que no es el caso). La idea es de usarlo conjuntamente con el Arduino, asi solo gasto una patilla del Arduino para controlar el LCD.
El protocolo es muy simple, si recibe un caracter ascii cualquiera, lo manda como carácter a la pantalla LCD a la posición actual del cursor, a no ser que sea el carácter 0xFE que entonces lee el siguiente byte y lo manda como código de control al LCD.Al iniciarse, el PIC manda el texto “Ok.” a la pantalla del LCD para comprobar que funciona correctamente, asi que para cualquier aplicación lo primero seria mandar el código de control de “limpiar pantalla” ;-)
Adjunto los esquemas del circuito y el diseño del PCB, así como el programa del PIC, por si a alguien le sirve de ayuda. En las pruebas estoy usando un 16F84A/04 y de hecho el circuito utiliza un cristal de 10Mhz, a la que tenga acceso a un /20, lo probaré a 20Mhz para ver si funciona bien a 9600bps, que a 10Mhz tuve problemas de timing.
Los archivos:
LCD Serial – PCB – Pistas
LCD Serial – PCB – Componentes
LCD Serial – Programa del PIC (2400bps)
Los componentes son: Q1: Cristal 10MHz, R1 Resistencia 1KOmh, R2 Potenciómetro 20K, C1 y C2 Condensadores cerámicos de 22pF. El conector del LCD es de 16 contactos (en lugar de los 14 normales) porque mi LCD tiene retroiluminacion y se alimenta en las patillas que estan antes de la “1″ normal de GND. Para un LCD sin iluminacion, habria que conectarlo a partir de la patilla 3.
7 comentarios
Other Links to this Post
Suscripción RSS a los comentarios de esta entrada. TrackBack URI



By ivan, 20 dUTC Octubre, 2008 @ 3:16 pm
hola!! es muy bueno encontrar gente como usted en internet. trabajo en un proyecto basado en picaxe. desde el picaxe puedo enviar informacion a lcd entrando a un 16f84a y no tenia el firmware controlador.
le paso el link adecuado para que entienda mejor que es lo que estoy diciendo.
servira su proyecto para controlar lo que necesito hacer?
perdon no entiendo casi nada de pic
By ivan, 20 dUTC Octubre, 2008 @ 3:26 pm
disculpa la molestia. no tienes un diagrama de conexion para entender bien la placa propuesta?
By ivan, 21 dUTC Octubre, 2008 @ 4:40 pm
hola me podrias mandar o postear el diagrama de conexion de esta placa necesito justo eso pero no eniendo muy bien la placa que brindas. por favor gracias
By ivan, 21 dUTC Octubre, 2008 @ 4:44 pm
porfavor enviame el diagrama de lcd serial 16f84a
By armando, 13 dUTC Agosto, 2010 @ 12:21 am
hola, he construido la placa para poder interfacear con un picaxe 18x pero desgraciadamente no me muestra nada en el display, cambie el cristal por uno de 4MHz no se si eso sea el problema, lo que se me ocurre es que probablemente tenga un problema de timing con respecto al cristal que le puse, probare con uno de 8 y luego uno de 10MHz, tienes alguna idea de que pueda ser aparte de eso?
By zako, 13 dUTC Agosto, 2010 @ 8:51 am
Pues el firmware del PIC está diseñado para 10Mhz, asi que puede ser eso, aunque al iniciarse deberia mostrar “ok” por la pantalla, para que estés seguro.
A los que pedis el esquema, lo he subido aqui:
http://ladecadence.net/blog/wp-content/uploads/LCD_Serial_V3.pdf
By electronico, 22 dUTC Septiembre, 2010 @ 1:43 am
amigo hice tu circuito y me muestra “ok” en lcd y lo probe con un piaxe 40×1 con comando
serout 7 T2400 ( “hola” ) y no muestra el mensaje muestra letras y signos raros le puse un oscilador de 12 mhz me puedes explicar que pasa