Ayuda con Programa "Hola mundo" con pic 16f628a y LCD
Publicado por Eduardo Adrian (1 intervención) el 29/09/2011 07:25:55
Buenos dias, tardes, noches, segun corresponda.
Quisiera saber si me pueden ayudar con un pequeño programa para empezar con la programacion de PIC's , he estado leyendo diversos manuales y buscando en internet, pero me he quedado atorado, espero me puedan ayudar, mi problematica es la siguiente:
Estoy usadando el programa llamado PIC Simulator IDE, ya que se me hizo bastante interactivo, ya que se puede simular los programas una vez compilados. En este programa uso el lenjuaje BASIC para el código fuente. Utilizo el pic 16F628A y un LCD JHD 162A. Mi código fuente es el siguiente:
Define LCD_BITS = 4 'configuro para usarlo a 4 bits
Define LCD_DREG = PORTB 'declaro el puerto b como envio de datos
Define LCD_DBIT = 4 ' segun el manual de usuario es para usar pines
'RB4,RB5,RB6 y RB7 del puerto b como envio de datos
Define LCD_RSREG = PORTB 'Declaro el pin RS del LCD
Define LCD_RSBIT = 3 'El pin RS del LCD se conecta a RB3
Define LCD_EREG = PORTB 'Declaro el pin E del LCD
Define LCD_EBIT = 2 'El pin E del LCD se conecta a RB2
Define LCD_RWREG = PORTB 'Declaro el puerto R/W
Define LCD_RWBIT = 0 ' El pin R/W desabilitado (a negativo)
Lcdinit 0 'Inicio el LCD
inicio: 'Etiqueta
Lcdout " hola" 'Muestra en la primera linea del LCD "hola"
WaitMs 200 'Espera 200 ms
Lcdcmdout LcdLine2Home 'Pasa cursor a segunda linea
Lcdout " mundo" 'Muestra en segunda linea del LCD "mundo"
WaitMs 200 'Espera 200 ms
Lcdcmdout LcdClear 'Borra LCD
goto inicio 'Regresa a la etiqueta "inicio"
end
Con esto termina el programa, al compilar, todo sale perfecto, sin errores, lo simulo y tambien me aparece en el LCD "hola" en primera linea y "mundo" en segunda linea, pero al momento de hacer el circuito en forma física no aparece nada, las conexiones que hago son:
PIC LCD
RB3.....................................................RS
RB2.....................................................E
RB4.....................................................D4
RB5.....................................................D5
RB6.....................................................D6
RB7.....................................................D7
R/W..................negativo
Al hacer el conexionado y alimentar el circuito, no aparece absolutamente nada en el LCD. La verdad es mi primer programa con LCD, me gustaria saber si alguien me puede apoyar en decirme si hago algo mal, para saber como corregirlo. De programador utilizo Pickit2 (para pasar el .hex al pic). De antemano muchas gracias.
Quisiera saber si me pueden ayudar con un pequeño programa para empezar con la programacion de PIC's , he estado leyendo diversos manuales y buscando en internet, pero me he quedado atorado, espero me puedan ayudar, mi problematica es la siguiente:
Estoy usadando el programa llamado PIC Simulator IDE, ya que se me hizo bastante interactivo, ya que se puede simular los programas una vez compilados. En este programa uso el lenjuaje BASIC para el código fuente. Utilizo el pic 16F628A y un LCD JHD 162A. Mi código fuente es el siguiente:
Define LCD_BITS = 4 'configuro para usarlo a 4 bits
Define LCD_DREG = PORTB 'declaro el puerto b como envio de datos
Define LCD_DBIT = 4 ' segun el manual de usuario es para usar pines
'RB4,RB5,RB6 y RB7 del puerto b como envio de datos
Define LCD_RSREG = PORTB 'Declaro el pin RS del LCD
Define LCD_RSBIT = 3 'El pin RS del LCD se conecta a RB3
Define LCD_EREG = PORTB 'Declaro el pin E del LCD
Define LCD_EBIT = 2 'El pin E del LCD se conecta a RB2
Define LCD_RWREG = PORTB 'Declaro el puerto R/W
Define LCD_RWBIT = 0 ' El pin R/W desabilitado (a negativo)
Lcdinit 0 'Inicio el LCD
inicio: 'Etiqueta
Lcdout " hola" 'Muestra en la primera linea del LCD "hola"
WaitMs 200 'Espera 200 ms
Lcdcmdout LcdLine2Home 'Pasa cursor a segunda linea
Lcdout " mundo" 'Muestra en segunda linea del LCD "mundo"
WaitMs 200 'Espera 200 ms
Lcdcmdout LcdClear 'Borra LCD
goto inicio 'Regresa a la etiqueta "inicio"
end
Con esto termina el programa, al compilar, todo sale perfecto, sin errores, lo simulo y tambien me aparece en el LCD "hola" en primera linea y "mundo" en segunda linea, pero al momento de hacer el circuito en forma física no aparece nada, las conexiones que hago son:
PIC LCD
RB3.....................................................RS
RB2.....................................................E
RB4.....................................................D4
RB5.....................................................D5
RB6.....................................................D6
RB7.....................................................D7
R/W..................negativo
Al hacer el conexionado y alimentar el circuito, no aparece absolutamente nada en el LCD. La verdad es mi primer programa con LCD, me gustaria saber si alguien me puede apoyar en decirme si hago algo mal, para saber como corregirlo. De programador utilizo Pickit2 (para pasar el .hex al pic). De antemano muchas gracias.
Valora esta pregunta


0