TODOPIC

Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: saracatunga en 03 de Octubre de 2006, 18:10:25

Título: no me funciona el lcd
Publicado por: saracatunga en 03 de Octubre de 2006, 18:10:25
hice el siguiente código , lo simulo en proteus y el lcd permanece en blanco

Define   LCD_DREG   PORTB         
Define   LCD_DBIT   0           
Define   LCD_RSREG   PORTB         
Define   LCD_RSBIT   5           
Define   LCD_EREG   PORTB         
Define   LCD_EBIT   4           

 

hola VAR WORD
  inicio:
hola=300

Lcdout $fe,$c6,# hola
end
Título: Re: no me funciona el lcd
Publicado por: LordLafebre en 03 de Octubre de 2006, 18:59:31
hice el siguiente código , lo simulo en proteus y el lcd permanece en blanco

Define   LCD_DREG   PORTB         
Define   LCD_DBIT   0           
Define   LCD_RSREG   PORTB         
Define   LCD_RSBIT   5           
Define   LCD_EREG   PORTB         
Define   LCD_EBIT   4           

 

hola VAR WORD
  inicio:
hola=300

Lcdout $fe,$c6,# hola
end


Hola:

El codigo esta bien, lo que esta haciendo es posicionando el cursor en la segunda línea y mostrando el valor de la variable hola, prueba con una pequeña pausa antes del end,

Lcdout $fe,$c6,#hola
pause 500
end

Si no te funciona revisa el conexionado.
Título: Re: no me funciona el lcd
Publicado por: AABHGA en 03 de Octubre de 2006, 19:09:19
Pero, la segunda linea no es $FE, $C0?
Título: Re: no me funciona el lcd
Publicado por: ferchomdq en 03 de Octubre de 2006, 20:04:21
Hola te hago una pregunta el lcd es 2x16 ya que según tu programa en mio que es lcd 2x16 aparece en la segunda linea casi a la mitad, y creo yo que si lo mandas a la posicion $c6 en uno de un linea no aparece en la pantalla.
te paso por las dudas el codigo que utilizo y que funcion:

define LCD_DREG PORTB
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 5
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 4
define LCD_LINES 2 ´el mio es de dos linea por eso va esto.
DATO VAR WORD

INICIO:
       pause 500
       DATO = 100   
       LCDOUT $FE,1,"EL VALOR ES:" ´con esto limpio la pantalla y pongo una etiqueta para que quede lindo nomas jaja
       lcdout $fe,$c6,# DATO
       
end

Ojo igual yo recien empiezo en esto pero creo que ese puede ser el problema.
Título: Re: no me funciona el lcd
Publicado por: Alanbrito en 03 de Octubre de 2006, 23:40:45
PRIMERO COMO VEO KIERES COLOCAR EL LCD EN EL PUERTO B:

DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 1
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 2
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 4

INICIO:

LCDOUT $FE,1
LCDOUT $FE,2,"PRIM. LINEA"
LCDOUT $FE,$C0,"SEGUN. LINEA"
PAUSE 2000
GOTO INICIO

CON ESTO EL PIN DE RS VA AL PORT B.1, EL E DEL LCD VA AL PORTB.2,EL BUS DE DATOS PIN D7 DEL LCD A PORTB.7  , PIN D6 DEL LCD A PORTB.6 ,PIN D5 DEL LCD A PORTB.5 ,PIN D4 DEL LCD A PORTB.4

NO TIENES QUE DEFINIR EL BUS DE DATOS POR DEFECTO ES 4 
LA POSICION DEL CURSOR VA DESDE 128 A 143 EN LA PRIMEREA LINEA, Y DESDE 192 A 207 EN LA SEGUNDA LINEA

ME EXPLICO EN TU PROGRAMA COLOCASTE LCDOUT $FE,$C6,#DATO
$C6 ESTA EN HEXADECIMAL ES LO MISMO QUE COLOCAR  LCDOUT $FE,198,#DATO QUE CORRESPONDERIA EN EL CENTRO DE LA SEGUNDA LINEA.

SI QUIERES SABER DE COMO HACER CARACTERES ESPECIALES POSTEA  OTRO TEMA Y TE EXPLICO


Título: Re: no me funciona el lcd
Publicado por: LordLafebre en 04 de Octubre de 2006, 00:28:10
Hola:

de seguir los errores mira aqui:

http://www.todopic.com.ar/foros/index.php?topic=2810.105

si no te funciona asi, me temo mucho mi amigo que el circuito esta mal armado, utilizar el lcd para un mensaje de esos es muy sencillo y no hay pierde, si el circuito esta bien armado, el programa debe funcionar, si estas armando y no funciona y el circuito esta bien armado, entonces revisa tus componentes, podria ser que uno de ellos este fallando.

Cualquier cosa comentala por aqui, espero que sea algo bueno  :mrgreen:
Título: Re: no me funciona el lcd
Publicado por: sergiopic en 20 de Noviembre de 2006, 20:47:42
HOLA

LO QUE PASA ES QUE CUANDO QUIERO PONER EL BUS DE DATOS DEL LCD EN 8 POR EL PUERTO B Y LOS PINES RS Y E POR EL PUERTO A NO QUIERE HACER NADA  :x

LES MANDO MI PROGRAMA Y MI CONEXION PARA VER SI ME PUEDEN AYUDAR

Título: Re: no me funciona el lcd
Publicado por: navaismo en 20 de Noviembre de 2006, 22:39:13
Haber prueba este codigo:

define lcd_dreg   portb
define lcd_bits   8
DEFINE LCD_EREG   PORTa
DEFINE LCD_EBIT   2
DEFINE LCD_RSREG  PORTa
DEFINE LCD_RSBIT  1

adcon1=7
lcdout$fe,1,"hi"

en realidad solo añadi el ADCON1 que hace digital el PORTA si hablamos del 877 verdad??
Título: Re: no me funciona el lcd
Publicado por: sergiopic en 21 de Noviembre de 2006, 00:13:36
HOLA LES COMENTO QUE YA ESTA RESUELTO EL PROBLEMA :mrgreen:

PERO AL PRINCIPIO EL PIC TOMABA LOS PUERTOS DEFAULT COMO SI LOS DIFINES NUNKA EXIXTIERAN
TE COMENTO QUE ERA POR LAS MINUSCULAS QUE TIENES EN ESE CODIGO


GRACIAS

SALUDOS Y GRACIAS POR SU AYUDA