TODOPIC

Microcontroladores PIC => - Niple - => Mensaje iniciado por: cobmirpic en 21 de Marzo de 2010, 19:27:26

Título: Mostrar datos en pantalla glcd
Publicado por: cobmirpic en 21 de Marzo de 2010, 19:27:26
Hola a tod@s.

Estoy intentando hacer funcionar una pantalla glcd con un pic 16f873A y no hay manera. Creo que hay algún paso que hago mal pero no entiendo cual. Adjunto un archivo .npl a ver si alguien le puede echar un vistazo. Es sumamente sencillo, sólo preparado para mostrar unas rayas, a modo de división en la pantalla.
Creo que el problema está en que si pincho dos veces sobre el diagrama de "inicializar GLCD_01" me dice "interrupción o periférico desconocido", es como si no reconociera la configuración de la pantalla.


Gracias.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 22 de Marzo de 2010, 07:01:23
Esta tarde te lo reviso y te indico lo sea.
Pero a si a bote pronto, ¿tienes la version demo a la de pago?
La demo tiene limitaciones, pero no se si esta sera una de ellas.

Fermin
Título: Re: Mostrar datos en pantalla glcd
Publicado por: cobmirpic en 22 de Marzo de 2010, 07:14:04
Gracias por responder Fer_Taca.

Tengo la versión de pago 5,5,0 plus.

Un saludo.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: boyperdidisimo en 22 de Marzo de 2010, 13:10:24
Hola, ya checaste que este bien conectado el glcd, no tuve problema en la programacion en realidad era por el pin reset del glcd. Por la tarde te paso un programa con pic16f877a y lo migras a tu micro.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 22 de Marzo de 2010, 14:49:32
Hola cobmirpic:

Cre que no tienes bien inicializado el glcd.
Una vez dentro del entorno si das a dispositivo y escoges glcdo1 (el tuyo ) me parece que l pin r/w debe ir conectado a algun pin que tu no tienes asignado.
Ademas no veo por ningun lado que indiques que quieres escribir las rayitas.
De todas formas voy a seguir investigando e intentare encontrar algun ejempo

fermin
Título: Re: Mostrar datos en pantalla glcd
Publicado por: cobmirpic en 22 de Marzo de 2010, 18:48:46
Hola. Gracias a los dos.

boyperdidisimo: El pin reset del glcd lo he conectado de todas las maneras posibles, creo que la más lógica es como el pin reset del micro, esto es con una resistencia de 10k al positivo. En el diagrama de niple no dice donde conectarlo. Ahún asi no me fuciona. Si me pudieras pasar ese ejemplo te lo agradecería.

Fer_Taca: El pin r/w yo siempre creía que había que conectarlo al negativo, lo he visto en algún ejemplo de la página de niple, ahora no recuerdo cual. Las rayitas es una imagen que cargué en la pantalla, (se puede coger cualquier cosa, creo) y si pinchas dos veces dentro de usr_glcd_prueba y luego en pantalla glcd, a mi me salen. El caso es que cualquier cosa que cargue no la visualizo.

Un saludo.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 22 de Marzo de 2010, 19:00:25
Normalmente el pin r/w tiene doble funcionalidas R=puede ser activa a nivle alto y W a nivel bajo o viveversa.
Seguramente lo habras visto conectado a un tension fija pues al dispositivo donde iba conctado solo utilizaba una fncionalidad y eso viene dado por el propio chip y hay que comprobarlo con el propio datasheet del mismo.

Cuando dice s que no puedes visualizarlo, lo estas probando con un simulador tipo Proteus o con un montaje real?

fermin
Título: Re: Mostrar datos en pantalla glcd
Publicado por: cobmirpic en 22 de Marzo de 2010, 20:19:00
Hola Fer_Taca.

El pin R/W lo he configurado ahora al pin RC3 del pic, y sigue igual. Lo estoy probando en un montaje real, con una protoboard y lo he repasado un montón de veces y no encuentro nada raro.

Un saludo.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 25 de Marzo de 2010, 14:36:40
Hola amigo:

Creo que ya he encontrado el fallo a que no puedas ver los caracteres en el GLD. Si vas a dispositivos:
- Selecciona el GLCD
- Editalo

Podras ver que estas usando el pin RA4 como salida y linea de control. Bueno pues ahi esta el fallo. Falta colocar una resistencia de pull-up entre este pin y Vcc. Esto es asi pues este pin configurado como salida es de colector abierto. ¡¡Con lo simple que era la cosa!!!

Bueno lo he probado y simulado y funciona perfectamente.

Saludos

fermin
Título: Re: Mostrar datos en pantalla glcd
Publicado por: cobmirpic en 31 de Marzo de 2010, 16:17:44
Hola.

Gracias por tu tiempo Fer_Taca. Hago lo que me indicas.

-Selecciono GLCD, lo edito, y veo que el pin RA4 del pic no lo he asignado a ningún pin del GLCD. He usado RC1y2, RB0 a RB7 y RA0 y RA1. Aún asi coloco una resistencia entre RA4, pin 6 del pic y VCC y a mi no me funciona. No se si estoy haciendo lo correcto.

Un saludo.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 31 de Marzo de 2010, 17:21:45
Hola cobmirpic:
Adjuto un ficcherito donde puedes ver la simulacion y la conexion del GLD.

Fermin
Título: Re: Mostrar datos en pantalla glcd
Publicado por: cobmirpic en 01 de Abril de 2010, 18:12:14
Hola Fer_Taca.

Pues el caso es que en el proteus funciona... pero en la vida real no del todo. Me explico, le doy tensión y la pantalla está en blanco. Quito el pin E del GLCD, lo vuelvo a poner y se ve. Es decir que tengo que quitar y poner el pin E para que funcione. Además, en niple, la flecha del nop tiene que ir a inicializar GLCD sino no, no se ve nada ni poniendo y quitando el pin E.
Por otra parte lo que me dijiste del pin RA4 y una resistencia al positivo no lo llego a entender, porque en tu simulación no tienes conectado nada.

Un saludo.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 02 de Abril de 2010, 08:19:43
 respecto a lo de quitar y poner el pin e para que se vea no se me ocurre nada, miraré a ver por que puede ser pero no me parece logico. En fin veremos.
Y lo del pin RA4 y la resistencia, en el fichero de simulacion no está puesta simplemente por que el pin ra4 no se se está utilizando.

La colocacion de la resistencia solo es obligatoria solo cuando utilices ese pin y lo utilizes como salida. Si lo llegases a utilizar como entrada tampoco seria necesario colocar ninguna resistencia.
Para ahorrarte dolores de cabeza intenta colocar siempre una resistencia en ese pin tanto si lo utilizas como entrada como si de salida. A mi un valor que ne va bien es de 10K pero uno de 4,7K tampoco le va mal.

fermin
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 02 de Abril de 2010, 13:58:45
Hola amigo:

Como no dispongo del mismo hardware que tu y aunque no te quisiera hacer perder el tiempo podias probar lo siguiente:

-Antes de crear el fichero hex, una vez que se te abre el fichero asm(si lo tienes asi configurado en Niple), vete casi al final del fichero o con la opcion buscar, busca= "glcd_busy" dentro de esta rutina encontraras una instruccion que debe ser movlw.1
Cambia este valor a 3 y mira a ver que pasa. Con esto se cambia el tiempo de estado del pin e.

-Otra prueba seria repetir la llamada (tambien lo puedes realizar en asm solo para probar y ver que van por ahí los pasos) que te adjunto en el fichero. Esto es en mi pc y con mi configuracion de pines, en tu programa dependera del pin que tengas asignado como "E"

Despues crea el fichero hex.

fermin

Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 02 de Abril de 2010, 14:02:59
Hola Fer_Taca.

El pin R/W lo he configurado ahora al pin RC3 del pic, y sigue igual. Lo estoy probando en un montaje real, con una protoboard y lo he repasado un montón de veces y no encuentro nada raro.

Un saludo.

Ojo con las tarjetas protoboard muchas veces suelen dar problemas de falsos contactos.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: cobmirpic en 02 de Abril de 2010, 17:14:42
Hola Fer_Taca.

Muchas gracias por el tiempo que me estás dedicando.
Después de toda la tarde dándole vueltas, he decidido cambiar de pantalla GLCD y con otra pantalla (es otro fabricante) ¡funciona!, al menos no hay que hacer la jugada de desconectar el pin y volverlo a conectar. He hecho un pequeño sensor de temperatura con la sonda DS1820, y la única cosa que veo ahora es que al actualizar la lectura hace un pequeño parpadeo, ya veremos si lo soluciono.
Con más calma adjuntaré las carácterísticas de la pantalla que si funciona y de la que no, para que no le vuelva a pasar a nadie, o por lo menos hasta que alguien encuentre una solución a ese tipo de pantallas.
No me ha dado tiempo a hacer la prueba que me propusiste, en el siguiente post daré los resustados de dicha prueba a ver si funciona.

Un saludo.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 03 de Abril de 2010, 07:47:38
Bueno pues me alegro que vayamos mejorando en algo.

Por otra parte, no estaria mal que pusieses las caracteristicas de la que no funciona o al menos indicar el tipo y si la podemos buscar en San Google podremos echarla un vistazo a ver si tiene algo que origina que no funcione.

Fermin
Título: Re: Mostrar datos en pantalla glcd
Publicado por: cobmirpic en 03 de Abril de 2010, 19:54:16
Hola.

Pues he puesto la referencia en el buscador (hace bastante tiempo que lo tengo y ni me acordaba de la marca) y es éste (cfag12864b-tmi-v). A ver si tú puedes descubrir algo, porque yo no lo acabo de entender.
Adjunto foto.

Un saludo.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 04 de Abril de 2010, 08:57:30
He estado echando un vistazo al datasheet del Glcd y la verdad no se por que no te funciona. He observado los cronogramas de las señales y los tiempos que se indican están muy por debajo de los empleados en las rutinas creadas por Niple.

De todas formas y como bien dices habrá que comparar las caracteristicas de una pantalla y otra para encontrar las diferencias. Me sigo inclinando por que será cosa de tiempos.

F.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: cobmirpic en 09 de Abril de 2010, 07:15:43
Hola a tod@s.

Adjunto el datasheet de la pantalla GLCD que me ha funcionado. La otra tiene la referencia cfag12864b-tmi-v y es la que no me funciona (no puedo adjuntar características porque ocupa más de lo que se puede subir como archivo al foro. Poniendo la referencia en google salen las características). Lo cual no quiere decir que a otra persona le pase lo mismo, si es así que lo diga para que no haya confusiones. Yo he hecho de todo y no ha habido manera.

Fer_Taca, hice las pruebas que me sugerías y sigue sin funcionar (gracias por tu tiempo). La pantalla que no funciona con Niple está bien porque la he probado a través del puerto paralelo del ordenador y se ve perfectamente.

Un saludo.
Título: Re: Mostrar datos en pantalla glcd
Publicado por: Fer_TACA en 09 de Abril de 2010, 17:35:31
Hola amigo:

Mira he estado revisando un poco los datasheet y permiteme una pregunta que quizas por obvia sea tonta y ridicula el realizar:

me imagino que al probar los 2 elementos habras cambiado de lugar las señales a los pines, pues no tienen la misma distribucion en uno y otro display.

Si es asi, la siguiente cosa que se me ocurre y reitero desde casi el(os) primeros post que se debe de tratar de un problema de tiempos. Si miras las figuras de los time-out de ambos pagina 19(creo) del que no te funciona y las 8 y 9 (creo) del que funciona, podrás ver que parecen que son iguales. Pero desde mi punto de vista( y seguramente estaré equivocado) presentan una pequeña diferencia. A ver si me se explicar:

Ambos datasheet dicen que se debe de cumplir un determinado tiempo entre unos valores tanto en las rampas de bajada y subida de las señales del pin E.

Este valor de tiempo se toma entre unos valores máximo y mínimo para ambas dispositivos. Para uno están entre 2V y los 0,8V; para el otro dispositivo están entre 0,7V de Vpp=5*0,7= 3,5V y 0,3V de Vpp= 5*0,3= 1,5V

Si observas estos datos entre uno y otro existe una diferencia del 6% que da lugar a que el que te funciona necesita un cambio en la señal E a una determinada frecuencia y para el que no funciona esa frecuencia es mas lenta y por tanto puede ser que el cambio de esta señal, que debe ir sincronizada de una determinada manera junto a las señales R/W y CS1-CS2 puede dar lugar a que se pierda información y no se lean los datos de una manera adecuada.

Espero haberme sabido explicar y salvo las 2 opciones que te indico: Asignaciones de pines  tiempos no se me ocurre otra cosa.

Por lo que dices, parece ser que das el tema por zanjado al funcionar tu diseño y por mi no hay inconveniente. Lastima no poder ayudarte más.

No me tienes que dar gracias ninguna, ha sido un gusto poder ayudarte y ha si poder devolver un poco de lo que me ayudaron a mi en su día.


Fermin