LCD 16X2 Esta quemado o no

Buenas compre un lcd de 16x2 y no enciende con el conectado al circuito, si le conecto a 5v a vdd y vss a tierra tendria que encender o sea ponerse verde o me equivoco
 
Si, pero mira bien si pones eso y el contraste a tierra que es el tercer pin (vee) la primera fila encendera completa (esto ocurre porque no fue inicializado.) y el backlight tiene alimentacion independiente, si tu lcd lo tiene usualmente son los pines 15 y 16. Te recomiendo consultar su datasheet.

Saludos,
 
Si, pero mira bien si pones eso y el contraste a tierra que es el tercer pin (vee) la primera fila encendera completa (esto ocurre porque no fue inicializado.) y el backlight tiene alimentacion independiente, si tu lcd lo tiene usualmente son los pines 15 y 16. Te recomiendo consultar su datasheet.

Saludos,

ok voy a probar



Si, pero mira bien si pones eso y el contraste a tierra que es el tercer pin (vee) la primera fila encendera completa (esto ocurre porque no fue inicializado.) y el backlight tiene alimentacion independiente, si tu lcd lo tiene usualmente son los pines 15 y 16. Te recomiendo consultar su datasheet.

Saludos,

Mira el LCd tiene los siguientes nombres en sus pines VSS VDD VO D0 D1 D2 D3 D4 D5 D6 D7 A K

VSS ES NEGATIVO

VDD ES POSITIVO

VO = ?
 
Última edición:
hola,
VO debe ser el contraste, de D0 a D7 es el bus de datos y A es el anodo del led del backlight y K es su catodo.
Cual es el modelo de tu lcd para estar seguro???

A otra cosa, lo estas alimentando solamente o tienes un circuito con un micro para inicializarlo???

Pero de momento si tu lcd esta bien a la hora de alimentarlo deberia quedar encendida la primera linea aunque no lo inicializes. (en algunos lcd es posible que observes que todos los cuadros prenden bajito)

Saludos,
 
Última edición:
hola,
VO debe ser el contraste, de D0 a D7 es el bus de datos y A es el anodo del led del backlight y K es su catodo.
Cual es el modelo de tu lcd para estar seguro???

A otra cosa, lo estas alimentando solamente o tienes un circuito con un micro para inicializarlo???

Pero de momento si tu lcd esta bien a la hora de alimentarlo deberia quedar encendida la primera linea aunque no lo inicializes. (en algunos lcd es posible que observes que todos los cuadros prenden bajito)

Saludos,

Listo si sirve, asi lo probe
 

Adjuntos

  • LCD_BL.jpg
    LCD_BL.jpg
    59.1 KB · Visitas: 154
Ok, que bueno que te funciono.
Yo usualmente me ahorro el pote y conecto el contraste a tierra y queda al maximo.
Pero esto depende del lcd y del lugar donde vivas.

Saludos,
 
Ok, que bueno que te funciono.
Yo usualmente me ahorro el pote y conecto el contraste a tierra y queda al máximo.
Pero esto depende del lcd y del lugar donde vivas.

Saludos,


Hola yo tengo el mismo LCD y funciona muy bien
pero al encenderlo el mensaje me sale a medias como si estuviera corrido hacia la izquierda

Uso un PIC 16f877A

Me Ayudan?

el codigo en PIC Basic Pro es el siguiente:
Código:
'%%%%%%%%%%%%%%%%%%%%%%%%%%%% MICROCONTROLADORES PIC %%%%%%%%%%%%%%%%%%%%%%%%%%%%%

RELOJ DIGITAL PROGRAMABLE

DEFINE LCD_DREG  PORTD
DEFINE LCD_DBIT  0
DEFINE LCD_RSREG PORTE
DEFINE LCD_RSBIT 0
DEFINE LCD_EREG  PORTE
DEFINE LCD_EBIT 1

ADCON1 = %0000010

TRISD = 0

X VAR BYTE
Y VAR BYTE
Z VAR BYTE
D VAR BYTE
F VAR BYTE
M VAR BYTE
A VAR WORD

Minutos VAR PORTB.0
Hora VAR PORTB.1
Dia VAR PORTB.2
Fecha VAR PORTB.3
Mes VAR PORTB.4
Anio VAR PORTB.5

TRISB.0 = 1
TRISB.1 = 1
TRISB.2 = 1

X = 0
Y = 0
Z = 0
D = 0

Inicio:

For A = 2000 TO 2050         'Año

For M = 0 TO 11              'Mes         

For F = 1 TO 31              'Numero de dias de Mes               
  
For X = 0 TO 23              'Hora

 D = D + 1                   'Día 
 
 IF D = 7 Then
             
    D = 0
             
 EndIF 
 
   For Y = 0 TO 59           'Minutos
        
      For Z = 0 TO 59        'Segundos
         
         IF Minutos = 1 Then
         
             Y = Y + 1 
             
             IF Y = 60 Then
             
             Y = 0
             
             EndIF  
         
         EndIF
         
         IF Hora = 1 Then
         
            X = X + 1
            
            IF X = 24 Then
             
             X = 0
             
            EndIF 
          
         EndIF
         
         IF Dia = 1 Then
         
            D = D + 1
            
            IF D = 7 Then
             
             D = 0
             
            EndIF 
          
         EndIF
         
         IF D = 0 Then
      
           IF X >= 0 AND X <= 11 Then 
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," AM/LUN "
  
           EndIF
            
           IF X > 11 AND X <= 23 Then
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," PM/LUN "
               
           EndIF
         
         EndIF
         
         IF D = 1 Then
      
           IF X >= 0 AND X <= 11 Then 
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," AM/MAR "
  
           EndIF
            
           IF X > 11 AND X <= 23 Then
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," PM/MAR "
               
           EndIF
         
         EndIF
       
         IF D = 2 Then
      
           IF X >= 0 AND X <= 11 Then 
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," AM/MIE "
  
           EndIF
            
           IF X > 11 AND X <= 23 Then
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," PM/MIE "
               
           EndIF
         
         EndIF
       
         IF D = 3 Then
      
           IF X >= 0 AND X <= 11 Then 
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," AM/JUE "
  
           EndIF
            
           IF X > 11 AND X <= 23 Then
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," PM/JUE "
               
           EndIF
         
         EndIF
         
         IF D = 4 Then
      
           IF X >= 0 AND X <= 11 Then 
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," AM/VIE "
  
           EndIF
            
           IF X > 11 AND X <= 23 Then
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," PM/VIE "
               
           EndIF
         
         EndIF
         
         IF D = 5 Then
      
           IF X >= 0 AND X <= 11 Then 
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," AM/SAB "
  
           EndIF
            
           IF X > 11 AND X <= 23 Then
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," PM/SAB "
               
           EndIF
         
         EndIF
         
         IF D = 6 Then
      
           IF X >= 0 AND X <= 11 Then 
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," AM/DOM "
  
           EndIF
            
           IF X > 11 AND X <= 23 Then
            
              LCDOut $FE,1," ",DEC2 X,":",DEC2 Y,":",DEC2 Z," PM/DOM "
               
           EndIF
         
         EndIF
         
         IF Fecha = 1 Then

              F = F + 1 
             
              IF F = 32 Then
             
              F = 1
             
              EndIF
   
         EndIF   
            
         IF Mes = 1 Then

              M = M + 1 
             
              IF M = 12 Then
             
              M = 0
             
              EndIF
   
         EndIF
        
         IF M = 0 AND F > 0 AND F <= 32 Then
         
            IF F = 32 Then
         
            F = 1
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," ENE DEL ",DEC4 A
         
         EndIF 
         
         IF M = 1 AND F > 0 AND F <= 29 Then
         
            LCDOut $FE,$C0," ",DEC2 F," FEB DEL ",DEC4 A
         
            IF F = 29 Then
         
            F = 1
            
            M = 2 
              
            EndIF
           
         EndIF 
         
         IF M = 2 AND F > 0 AND F <= 32 Then
         
            IF F = 32 Then
         
            F = 1
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," MAR DEL ",DEC4 A
   
         EndIF 
         
         IF M = 3 AND F > 0 AND F <= 31 Then
         
            IF F = 31 Then
         
            F = 1
            
            M = 4
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," ABR DEL ",DEC4 A
         
         EndIF 
         
         IF M = 4 AND F > 0 AND F <= 32 Then
         
            IF F = 32 Then
         
            F = 1
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," MAY DEL ",DEC4 A
      
         EndIF 
         
         IF M = 5 AND F > 0 AND F <= 31 Then
         
            IF F = 31 Then
         
            F = 1
            
            M = 6
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," JUN DEL ",DEC4 A
         
         EndIF 
         
         IF M = 6 AND F > 0 AND F <= 32 Then
         
            IF F = 32 Then
         
            F = 1
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," JUL DEL ",DEC4 A
        
         EndIF 
         
         IF M = 7 AND F > 0 AND F <= 32 Then
         
            IF F = 32 Then
         
            F = 1
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," AGO DEL ",DEC4 A
        
         EndIF 
         
         IF M = 8 AND F > 0 AND F <= 31 Then
         
            IF F = 31 Then
         
            F = 1
            
            M = 9
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," SET DEL ",DEC4 A
         
         EndIF 
         
         IF M = 9 AND F > 0 AND F <= 32 Then
         
            IF F = 32 Then
         
            F = 1
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," OCT DEL ",DEC4 A
    
         EndIF
         
         IF M = 10 AND F > 0 AND F <= 31 Then
         
            IF F = 31 Then
         
            F = 1
            
            M = 11
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," NOV DEL ",DEC4 A
         
         EndIF 
          
         IF M = 11 AND F > 0 AND F <= 32 Then
         
            IF F = 32 Then
         
            F = 1
            
            EndIF
         
            LCDOut $FE,$C0," ",DEC2 F," DIC DEL ",DEC4 A
     
         EndIF 
         
         IF Anio = 1 Then

              A = A + 1 
             
              IF A = 2051 Then
             
              A = 2000
             
              EndIF
   
         EndIF
                                 
         Pause 1000
 
      Next Z
          
   Next Y 
 
Next X

Next F

Next M

Next A
     
GoTo Inicio
 

Adjuntos

  • CAM00678.jpg
    CAM00678.jpg
    86.3 KB · Visitas: 23
Última edición por un moderador:
Hola yo tengo el mismo LCD y funciona muy bien
pero al encenderlo el mensaje me sale a medias como si estuviera corrido hacia la izquierda

Uso un PIC 16f877A

Me Ayudan?
En ese display tienes que empezar a escribir desde la dirección 0x84, no desde 0x80 para la línea 1.
Para la línea 2 tienes que empezar a escribir desde la dirección 0xC4, no desde 0xC0
Por ejemplo...
Código:
    LCDOut $FE,1 ; Limpiar o inicializar la pantalla
    LCDOut $FE,$84,"PROBANDO LCD"   ; Línea 1
    LCDOut $FE,$C4,"LMG-162-STN"    ; Línea 2
Saludos.
 
Última edición:
Hola

Ahora tengo otro problema
estoy tratando de Modificar le Programa en Micro Code Studio 2.6
y cuando lo quiero compilar me dice Unable to locate RelojOk.asm (en mi caso)
y no me Genera ni el . HEX ni el .asm nada

por lo que no puedo avanzar, algun consejo?
 
Hola

Ahora tengo otro problema
estoy tratando de Modificar le Programa en Micro Code Studio 2.6
y cuando lo quiero compilar me dice Unable to locate RelojOk.asm (en mi caso)
y no me Genera ni el . HEX ni el .asm nada

por lo que no puedo avanzar, algún consejo?
Posiblemente estés compilando el programa dentro de una carpeta con una ruta demasiado larga,
y usando la opción para compilar usando MPASMWIN.
Si es así, coloca la carpeta del proyecto en una carpeta que no exceda de 62 caracteres y compila nuevamente.

Otra cosa que puedes hacer, es no utilizar la opción para compilar usando MPASMWIN.
Mira por aquí: Microcode Studio sin usar MPASMWIN
También puedes mirar por aquí: Instalación de MicroCode Studio por otra posible solución.
Si utilizas MPLAB para programar con PICBasic Pro, es recomendable que uses únicamente MicroCode Studio.

Te recomiendo incluir la palabra de configuración en la cabecera del programa si usas MicroCode Studio para programar.
Y que definas la frecuencia del oscilador con la que harás funcionar el microcontrolador.
Algo así para un PIC16F877A:
@ Device XT_OSC, WDT_OFF, PWRT_ON
Define OSC 4

Otra recomendación, es que leas un poco más sobre programación en PICBasic Pro.
Curso de programación de PIC en PICBasic Pro

El código que posteaste se debe compilar sin problemas, así que, si no encuentras la solución con la información que te proporcioné, entonces debes darnos más detalles acerca de cómo lo estás haciendo.

Suerte.
 
Última edición:
Atrás
Arriba