Autor Tema: Problemas entre 16F819 y display LCD  (Leído 3310 veces)

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

Desconectado chemate2000

  • PIC10
  • *
  • Mensajes: 15
Problemas entre 16F819 y display LCD
« en: 16 de Noviembre de 2004, 09:42:00 »
Llevo poco tiempo con los Pics y tengo un problema entre un 16F819 y un display LCD ya que este es el micro que estoy usando.

Para programar utilizo el Proton Basic y el problema es el siguiente:

El LCD funciona cuando quiere, es decir, haces un programa para que te saque por el display un texto, lo compilas y funciona y si lo vuelves a compilar, ya no funciona.
Yo no se si es un problema del micro o del compilador.
Me comentaron que era problema del PORT B, así que lo cambie al PORT A pero sigue igual.

Cuando quiere funciona y cuando quiere se queda el display en blanco.

Gracias por vuestra ayuda y un saludo a todos

Desconectado fenix_jn

  • PIC18
  • ****
  • Mensajes: 418
RE: Problemas entre 16F819 y display LCD
« Respuesta #1 en: 16 de Noviembre de 2004, 21:30:00 »
Ok, aki pueden pasar 3 cosas:

a) Problema de protocolo: Los tiempos que los datos deben permanecer en el puerto podrian ser muy cortos para que el LCD los lea.

b) Display Defectuoso: No rekiere explicacion

c) Bits de configuracion del PIC: Es posible que al grabar el PIC no estes seteando los bits de configuracion correctamente, asegurate de hacerlo antes de grabar el PIC.

Esto es suponiendo que solo sea el PIC y el LCD, tb deberas evaluar otros problemas como la fuente, las conexiones...

Desconectado chemate2000

  • PIC10
  • *
  • Mensajes: 15
RE: Problemas entre 16F819 y display LCD
« Respuesta #2 en: 19 de Noviembre de 2004, 09:50:00 »
Hasta lo que yo llego a entender, si fuera problema de fuses o de retardos, imagino que fallaría siempre. Sin embargo sigo sin poder entender que unas veces funcione y otras no siendo siempre el mismo programa aparte que según la ayuda que trae el Proton, tampoco tiene que ser tan problemático.

Si fuera problema del LCD, imagino que cuando funcionase, de vez en cuando al quitar y dar tensión no funcionaría y sin embargo, una vez que compilas el programa y arranca el display, aunque quites y des tensión mil veces, siempre arranca bien.

Si alguien quiere, puede probarlo y contar la experiencia y los resultados.
Igual hay algo que se me escapa.


Un saludo a tod@s.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Problemas entre 16F819 y display LCD
« Respuesta #3 en: 19 de Noviembre de 2004, 17:17:00 »
Es obvio pero, ¿está pinchado en protoboard y has comprobado todos los puentes y la solidez que presentan?
¿o está soldado y has revisado todas las soldaduras por si hay alguna fría o defectuosa?

Es que tiene una pinta a mal contacto. Por cierto, revisa la conexión del regulador de contraste...

Desconectado chemate2000

  • PIC10
  • *
  • Mensajes: 15
RE: Problemas entre 16F819 y display LCD
« Respuesta #4 en: 22 de Noviembre de 2004, 09:22:00 »
Hola a tod@s.

Eléctricamente está todo bien

El micro lo estoy haciendo trabajar con oscilador interno pero en teoría no debería tener ningún problema.

Cuando arranco el programa, lo primero que hago es esperar 2 segundos para que el display se inicialice correctamente.

Pienso que puede ser problema del compilador o de los puertos del PIC, aunque también he llegado a pensar que sea por configurar el oscilador en modo interno.

No obstante he pedido el PIC16f876 para probar a ver si ocurre lo mismo.

Sigo invitando a que lo probeis a ver si os ocurre lo mismo.

PROGRAMA X --> COMPILACION --> FUNCIONAMIENTO OK
PROGRAMA X --> COMPILACION --> FUNCIONAMIENTO NOK

RESULTADO --> NO ENTIENDO NADA.

Un saludo.

Desconectado fenix_jn

  • PIC18
  • ****
  • Mensajes: 418
RE: Problemas entre 16F819 y display LCD
« Respuesta #5 en: 22 de Noviembre de 2004, 17:46:00 »
Intentalo con un oscilador a cristal (XT)

Desconectado chemate2000

  • PIC10
  • *
  • Mensajes: 15
RE: Problemas entre 16F819 y display LCD
« Respuesta #6 en: 25 de Noviembre de 2004, 08:52:00 »
Hola fenix_in.

Puede que tengas razón ya que he leido por el foro que con oscilador interno da problemas a la hora de sacar datos por el puerto serie y como al display, al fin y al cabo, se le envian datos, aunque no sea protocolo serie, es posible que por culpa de la inestabilidad del oscilador interno, a veces no inicialice el display.

Lo probaré y ya comentaré los resultados.

Por cierto, sabe alguien si este Pic lleva algun valor de calibración para el oscilador interno.

Muchas gracias por la ayuda

Un saludo desde Zaragoza (España)

Desconectado fenix_jn

  • PIC18
  • ****
  • Mensajes: 418
RE: Problemas entre 16F819 y display LCD
« Respuesta #7 en: 25 de Noviembre de 2004, 13:38:00 »
Bueno, he leido por aki que el osc interno es lo mas inestable que existe (al menos cuando hablamos de usarlo en comunicaciones), segun el manual, este oscilador no es muy confiable (eso no lo dicen asi) porq el valor de la frecuencia varia en funcion del voltaje y la temperatura asi q ni idea... Conclusion: Usa un cristal que con eso tendras mas seguridad en el proyecto.

Acerca de los valores de calibracion: Este PIC NO posee un valor de calibracion para el osc asi q d cualkier forma usa un cristal en tu osc.

Desconectado Elena2000

  • PIC24F
  • *****
  • Mensajes: 722
RE: Problemas entre 16F819 y display LCD
« Respuesta #8 en: 26 de Noviembre de 2004, 04:29:00 »
Hola chemate2000!

Por lo que dices, si el programa te funciona a veces, y otras veces no te funciona, hay que descartar problemas eléctricos de contáctos defectuosos o malas soldaduras. Tampoco parece probable que estén mal configurados los fuses del micro. En tema del oscilador interno de los pics, por red RC, es que efectivamente son muy inestables, y encima en el caso de este pic en concreto no existe un parámetro de calibración del oscilador de forma interna, por código. Desde luego prueba, si es posible, a sustiruir el oscilador interno por un cristal de cuarzo, es sencillo de incorporar y tendrás más estabilidad en los ciclos. Ya nos contarás.

Por otro lado quiero preguntarte una cosa: ¿has puesto un circuito de reset externo? te lo digo porque a veces, aunque tengas habilitado el fuse de "power on reset", hay micros que tardan mucho en arrancar (a veces ni arrancan, los capullos), y esto se soluciona poniendo un reset externo que aumente el pulso del reset.
Ah! y otra cosa que también puede estar pasándote, chemate, mira a ver qué gestión haces con el perro guardian, porque si lo tienes activado y luego no te encargas de liberarlo (clrwdt, en ensamblador), el micro hace cosas raras, incluso puede no arrancar o resetearse cuando le da la gana.

Bueno, ya nos dirás, vale?

Desconectado chemate2000

  • PIC10
  • *
  • Mensajes: 15
RE: Problemas entre 16F819 y display LCD
« Respuesta #9 en: 28 de Noviembre de 2004, 09:30:00 »
Hola a tod@s.

El viernes por la noche, estuve probando el famoso 16F819 con el LCD en modo de oscilador externo a 8 MHz y por fin consegui que funcionara siempre el display, por lo menos las 20 o 30 veces que modifique y compile al programa.
Era un programa pequeño pero para probar, era más que suficiente.

Definitivamente, si tienes que hacer comunicar al PIC con cualquier dispositivo, sea comunicación serie, I2C o LCD, que al fin y al cabo es otro tipo de comunicación, hay que hacer trabajar al PIC con oscilador externo y si por lo que sea te hacen falta más pines, lo mejor es elegir otro con más puertos, sino te puedes volver loco.

Muchas gracias a todos por vuestra ayuda.

Se ha vuelto a demostrar que muchas mentes piensan más que una

Un saludo.

Desconectado RGL

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 634
RE: Problemas entre 16F819 y display LCD
« Respuesta #10 en: 28 de Noviembre de 2004, 17:38:00 »
Yo he usado el oscilador interno de 4MHZ del 16F628A trabajando en comunicación serie a 9600 y va de vicio. No se si el 819 será más o menos estable, pero yo no he tenido ningún problema y los uso en dispositivos que están comunicando continuamente (cada 50 milisegundos) sin parar las 24h/7días sin parar.  Ademas ya son 1200 placas instaladas trabajando sin problemas en las comunicaciones.

Por lo tanto yo no descartaría realizar diseños prescidiendo del oscilador interno. Probablemente para los displays, que son muy puñeteros con los tiempos pueda haber problemas, pero no para todos los perifericos tiene que ser lo mismo.

Saludos
Ricky
Madrid-España