Autor Tema: Problemas PIC 16F877A y LCD 2x16 HMC16202SG-LY-12-1  (Leído 7158 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado perkantronico

  • PIC10
  • *
  • Mensajes: 7
Problemas PIC 16F877A y LCD 2x16 HMC16202SG-LY-12-1
« en: 01 de Noviembre de 2009, 17:34:54 »
Hola que tal ¡¡, Primero que todo felicitar a todos por los aportes, ya que de verdad son bastante utiles al responder a problemas simples o complejos.

Bueno, estoy trabajando con el PIC 16F877A y quiero probar un LCD 2x16.  esta pantalla es  de un teclado de una alarma.
es el modelo HMC16202SG-LY-12-1 (http://s4.subirimagenes.com/otros/previo/thump_3487694hmc16202sgly121.jpg)

he buscado por todos lados el datasheet y mas, lo solicite en algunas paginas  donde lo ofrecen

http://www.elektronika.cz/inshop/scripts/detail.asp?ItemID=5360
http://www.proactivecomponentsusa.com/searchparts.html

Pero han respondido que no lo tienen o no disponen de el por lo pronto.

Entonces me dispuse a conectarlo como lo haria con un JHD162A o un lcd estandar, dado que tambien tiene 16 PINES,
la conexion es la siguiente:

LCD       PIC

Vss-->   Tierra
Vcc-->   5v
Vee--> potenciometro de 10 K (Regulador)

RS--->   D1
RW-->   Tierra
E---->    D0

D4-->    D4
D5-->    D5
D6-->    D6
D7-->    D7

Utilizo la libreria Flex_lcd ((http://picmania.garcia-cuervo.net/picc.php#FLEXLCD))
con la siguiente modificacion para utizar el puerto D del PIC:

--------------------------------------------------------------------------------------------------
#define LCD_DB4 PIN_D4
#define LCD_DB5 PIN_D5
#define LCD_DB6 PIN_D6
#define LCD_DB7 PIN_D7

#define LCD_RS PIN_D1
#define LCD_RW PIN_D2
#define LCD_E PIN_D0

-----------------------------------------------------------------------------------------------

 para probar el funcionamiento utilizo el mismo codigo de la Pag.
(http://picmania.garcia-cuervo.net/experimentos.php#EXP-6)  escribiendo en LCD , ejemplo en CCS pic

-----------------------------------------------------------------------------------------------
#include <16f877a.h>
#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT
#use delay(clock=4000000)
#use standard_io(b)
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)

#include "flex_lcd.c"


char Keypress=' ';

#int_rda
void serial_isr() {

  Keypress=0x00;
  if(kbhit()){
    Keypress=getc();
  }
}


void main() {

  enable_interrupts(global);
  enable_interrupts(int_rda);

  printf("\r\n\LCD driver monitor\r\n");

  lcd_init();

  do {

    if(Keypress!=0x00){
      lcd_putc(Keypress);
      putc(Keypress);
      Keypress=0x00;
    }

  } while (TRUE);
}

-------------------------------------------------------------------------------------------

Luego el display solo responde prendiendo y apagando de manera difusa, como raro prende los cuadros completos
y luego se apagan de a poco. (tambien pasa cuando vario el potenciometro)
y cuando pasa eso, escribo en el teclado y este no responde.
otra cosa en todo momento el lcd NO RESPONDE a lo enviado.

ademas he probado con varias rutinas pero tampoco nada ...

Ojala alguien haya ocupado este LCD, y si no es el LCD ayuda para hacer funcionar  el ¡¡maldito Bicho¡¡ por el Puerto D del PIC

Saludos.

 



Desconectado darck_khronos

  • PIC18
  • ****
  • Mensajes: 493
Re: Problemas PIC 16F877A y LCD 2x16 HMC16202SG-LY-12-1
« Respuesta #1 en: 01 de Noviembre de 2009, 20:47:12 »
bueno antes que nada te recomendaria que hicieras primero simulaciones ya sea en proteus o algun soft con el cual simules tus Pic`s,

y algo si cuando te salgan los cuadros incompletos es que tu LCD ya se murio

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1698
Re: Problemas PIC 16F877A y LCD 2x16 HMC16202SG-LY-12-1
« Respuesta #2 en: 02 de Noviembre de 2009, 14:22:27 »
psss raro esa libreria no falla...revisa  bien las conexiones de pronto se paso algo...cuando aparecen esos cuadros es posible q este muerto o sea un problema de inicializacion pero no creo q este ultimo sea el caso
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA

Desconectado perkantronico

  • PIC10
  • *
  • Mensajes: 7
Re: Problemas PIC 16F877A y LCD 2x16 HMC16202SG-LY-12-1
« Respuesta #3 en: 03 de Noviembre de 2009, 01:14:05 »
Sep..Toda la razon, probe simulando en Proteus y cierto funciono Ok.

Ahora lo hice con el micro, de forma fisica, y sigue igual, no Funka para nada y salen cuandrados medios raros.
murio al parecer.

Gracias por las sugerencias.

Pd: Aunque si alguien tuviera el Datasheet, para sacarme las dudas si se conecta igual que uno standar.

Desconectado darck_khronos

  • PIC18
  • ****
  • Mensajes: 493
Re: Problemas PIC 16F877A y LCD 2x16 HMC16202SG-LY-12-1
« Respuesta #4 en: 03 de Noviembre de 2009, 02:45:04 »
si pudieses subir un video para ver como reacciona tu lcd y para ver tu cableado

Desconectado perkantronico

  • PIC10
  • *
  • Mensajes: 7
Re: Problemas PIC 16F877A y LCD 2x16 HMC16202SG-LY-12-1
« Respuesta #5 en: 04 de Noviembre de 2009, 02:19:48 »
Hola darck_khronos

Aqui te van algunas imagenes (Ojala sirvan) y un video de demostracion.

Simulacion.
http://sube.la/viewer.php?file=v8794k4911pzzd8q10vr.jpg

Circuito
http://sube.la/viewer.php?file=hzqcfwugpv47cqots9e.jpg
http://sube.la/viewer.php?file=vreum0sgranjs8wxtg.jpg

El Problema
http://sube.la/viewer.php?file=ybyj3t631kguh1x8dnzy.jpg
http://sube.la/viewer.php?file=xzu2tz6jp3kz9b46gl.jpg

Video.
basicamente indica cuando cargo el programa, y el LCD no responde ni el teclado como deberia hacerlo
Segun el Programa. Ademas al inicio y cuando  muevo el potenciometro aparece el problema.


Eso.



Desconectado perkantronico

  • PIC10
  • *
  • Mensajes: 7
Re: Problemas PIC 16F877A y LCD 2x16 HMC16202SG-LY-12-1
« Respuesta #6 en: 04 de Noviembre de 2009, 02:22:57 »
Ah¡¡...y Este es codigo...
---------------------------------------------------------------------------------------------------
#include "E:\Proyectos CCS\PROYECTO 2\Lcd_puertoD\Prueba_FLEX\prueba_1.h"
#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT
#use delay(clock=4000000)

#define LCD_DB4 PIN_D4
#define LCD_DB5 PIN_D5
#define LCD_DB6 PIN_D6
#define LCD_DB7 PIN_D7

#define LCD_RS PIN_D0
#define LCD_RW PIN_D1
#define LCD_E PIN_D2

#include "flex_lcd.c"


char Keypress=' ';

#int_rda
void serial_isr() {

  Keypress=0x00;
  if(kbhit()){
    Keypress=getc();
  }
}


void main() {

  enable_interrupts(global);
  enable_interrupts(int_rda);

  printf("\r\n\LCD driver monitor\r\n");

  lcd_init();
  lcd_putc(" Prueba LCD ");
  do {

    if(Keypress!=0x00){
      lcd_putc(Keypress);
      putc(Keypress);
      Keypress=0x00;
    }

  } while (TRUE);
}
--------------------------------

Y en la Libreria activada el
#define USE_LCD_RW   1
 

Desconectado jhozate

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1698
Re: Problemas PIC 16F877A y LCD 2x16 HMC16202SG-LY-12-1
« Respuesta #7 en: 04 de Noviembre de 2009, 10:35:24 »
te comento que a mi una vez me salia lo mismo...y en definitiva el lcd estaba muerto..
Ser Colombiano es un Premio, Saludos desde CALI-COLOMBIA


 

anything