Autor Tema: Ayuda lcd  (Leído 17522 veces)

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

Desconectado huntergti

  • PIC12
  • **
  • Mensajes: 62
Ayuda lcd
« en: 24 de Julio de 2007, 16:42:43 »
Buenas!! Necesito vuestra ayuda en grandes dosis, pues estoy desesperado. Os comento, quiero mostrar por el lcd el típico mensaje hola, sólo para saber como va el funcionamiento, tengo un entrenador en mi casa con el pic16f84a montado, compilo el programa hola.asm (con sus correspondientes librerias) que se encuentra en el cd ejemplo del libro ramma del pic16f84a, me da que todo es correcto, pero a la hora de programar el pic con el icprog, ejjjj me da error en la dirección 0000ah o algo así. El caso es que reinicio el entrenador (pic school) y programo el pic con otro programa mio que no tiene nada que ver con el lcd y me va perfecto, vuelvo a meter el.hex de hola y mismo error y que no sale nada por el lcd. Comentaros que me gustaría poder simularlo antes en algún programa por sino me va bien, tengo el pic simulator ide xo no se muy bien como va lo del lcd y lo pruebo y no sale nada (incluso con ejemplos propios del programa). también comentar que he intentado simularlo en el mplab (pues más o menos controlo el programa) pero la pestaña de view--> lcd pixel no puedo marcarla. Por favor decidme que puedo hacer, en que fallo, como programarlo paso a paso, un simulador de lcd para ver si mi programa va bien, en fin esas cosas. Por último comentar que programo en assembler y conozco c pero de momento solo sé utilizar el pic con código de ensamblador

Muchas gracias por todo, espero vuestras respuestas :-)

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Ayuda lcd
« Respuesta #1 en: 25 de Julio de 2007, 13:38:24 »
Hola huntergti. según comentas, ya tienes problemas desde el programador, por lo que deberias empezar a resolver desde allí. Sería buena idea que comentaras mejor que exactamentente sucede cuando intentas grabar el programa en el pic.
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado huntergti

  • PIC12
  • **
  • Mensajes: 62
Re: Ayuda lcd
« Respuesta #2 en: 26 de Julio de 2007, 04:43:07 »
Voy a intentar explicar mejor, aunq yo mismo me lio xq no tiene ni pies ni cabeza. Primero abro el mplab, creo nuevo proyecto, añado en source files hola.asm(fichero que se encuentra en el cd que te dan con el libro ramma del pic 16f84a) y en header files 4bit_lcd.inc, retardos.inc y la cabcera del pic16f84a.inc. Compilo no me da errores y esas cosas, puesto que no se simularlo (si sabes de algún programa y me puedes explicar como va me sería de gran ayuda) paso directamente a programarlo en el pic. Abro el ic-prog, cargo mi fichero hexadecimal, borro el pic por si tenia algo, lo programo y me salta con un error en la memoria 000ah, creo q es :? .Para comprobar si esta bien o mal el programa, reseteo el pic, y le meto otro programa que se que esta bien (el programa consiste en que ilumine el display de distintas formas segun la entrada que tenga). Bueno pues ahora viene la parte más rara. Vuelvo a borrar el pic, le meto mi programa hola.hex y vuelve a darme el mismo error, entonces lo vuelvo a borrar y esta vez le meto el programa que ants me funcionaba y tachan me da error :x. No se porque hace eso, tampoco es que sea mi duda principal, puesto que lo que ya termina de enfadarme es lo siguiente. Pienso que lo he compilado mal el programa hola.asm asi que que utilizo el .hex que viene también en el cd que dan con el libro. supuestamente este debe funcionar correctamente y eso, pero tampoc hace nada, da error y el lcd no mustra nada. A lo mejor es cosa del icprog q lo tengo mal programado, no se, espero que puedan ayudarme. Perdón por tanto texto, pero espero que así tengan más datos y me den alguna solución.GRACIAS

Desconectado Jorge_Loa

  • PIC10
  • *
  • Mensajes: 24
Re: Ayuda lcd
« Respuesta #3 en: 26 de Julio de 2007, 14:40:52 »
Hola, tu pic es 16f84 ó 16f84a; en el mplab recordaste ir al menu Configure-Select Device y seleccionar el pic tal cual es el tuyo, en el icprog seleccionaste el pic correcto; revisaste que las librerias  y el programa presente en le CD (no tengo el libro que dices y por eso no lo se) correspondan al pic que usas?????????
Recuerda que si tu Pic dice 16f84a, debe estar así en el icprog, en el MPLAB, y en el codigo del programa.
Un solo privilegio: La inteligencia
Una sola aristocracia: La del Espíritu

Desconectado fredyf

  • PIC10
  • *
  • Mensajes: 19
Re: Ayuda lcd
« Respuesta #4 en: 26 de Julio de 2007, 15:00:42 »
hola: huntergti

Yo tambien tengo el libro simule casi la mayoria de los ejemplos propuestos al finalizar cada tema no tuve muchos incovenientes. El archivo hola.HEX del CD esta bien y no tiene errores el problema esta en el icprog o en el grabador en le libro hay una parte que comenta esto mañana te lo recuerdo, cuando yo lo simule por primera vez me equivoque en el orden de los terminales del LCD porque al volteralo lo coloque en orden inverso.
el libro tiene una web:
http://www.pic16f84a.com/Proteus.htm
Alli estan todos los ejercicios propuestos por el autor.

Saludos
Los hombres inteligentes quieren aprender, los demas enseñar

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Ayuda lcd
« Respuesta #5 en: 26 de Julio de 2007, 15:17:43 »
pudiera ser que se trate de la palabra de configuración como te han comentado. En el hola.asm que te da problemas, verfica que tenga el word configuration ( no es necesario activarlo desde aquí pero a la larga es mejor) y cuando cargues el hola.hex mira en el software programador (en tu caso icprog) que concuerde los bits que habias declarado.

por ejemplo: para el 16f84a

cp= off
wdte=off
/pwrte=on
selección clock externo= xt

sería 0x3FF1

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Ayuda lcd
« Respuesta #6 en: 26 de Julio de 2007, 15:19:06 »
ah se me olvida decirte que para simular la LCD, tienes el proteus o el PIC simulator IDE que son excelentes a este caso.
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado Leon Pic

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3610
    • Impresiones en 3D
Re: Ayuda lcd
« Respuesta #7 en: 26 de Julio de 2007, 21:42:23 »
Hola. Icprog, tiene muchas configuraciones dependiendo del programador que usas. El error 0000ah, es que ni siquiera pudo inicializar la grabación, por ende, el icprog no te reconoció el programador (la placa en donde se conecta el pic) Para poder saber que configuración debes utilizar, debes preguntar al fabricante, o de donde sacaste el circuito para crearlo.

Saludos :-/ :-/
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega al PADRE si no es por mi.

Desconectado fredyf

  • PIC10
  • *
  • Mensajes: 19
Re: Ayuda lcd
« Respuesta #8 en: 27 de Julio de 2007, 11:07:25 »
Hola:
Nunca vi el 0000ah deve ser algo adicional pero si el 0000h que es la verificacion que no pudo leer la primera direccion de la memoria de programa puede ser que el programador este mal pero ya pudiste programar con tu programa ilumine el display de distintas formas y comentas que te funciono por lo cual puede estar bien en  http://www.ic-prog.com/index1.htm - Supported programmer types, estas los programadores recomendados con algunos circuitos de ejemplo.

Si ya programaste una ves lo del hola.hex no te deve causar problemas no parece logico el error a menos que tenga proteccion de codigo es mejor que los fusibles sean los adecuados __CONFIG   _CP_OFF &  _WDT_OFF & _PWRTE_ON & _XT_OSC

Me parece que el problema esta en el LCD puede tener poco contraste o esta mal alimentado o la conexcion del bus de datos y de control al pic no es la recomendada en tu entrenador, E-RA2, RS-RA0, D7:D4-RB7:RB4.

Te adjunto unos apuntes del error frecuente, y lo ficheros mas importantes del hola yo lo tengo en el CD como LCD_01

Espero ayudarte.
Los hombres inteligentes quieren aprender, los demas enseñar

Desconectado huntergti

  • PIC12
  • **
  • Mensajes: 62
Re: Ayuda lcd
« Respuesta #9 en: 30 de Julio de 2007, 15:57:15 »
Ante todo muchas gracias por vuestras respuestas, me están ayudando y por lo menos sé q alguien puede echarme un cable. Luego pediros disculpas por tardar tanto en responder, pero he tenido un fin de semana ajetreado. Bueno deciros que lo de la configuración de palabra no es, puesto que cuando cargas el .hex por defecto pone las opciones que tiene el propio archivo, así que lo del cp descartado. Muy logrado lo que me has enviado fredyf, pero sigo en las mismas, Quizás deba aclararos un par de cosas que puedan ayudar. Lo primero es que yo me conecto al pic por el puerto de la impresora, eso puede afectar?? y segundo que utilizo windows xp, aunque ya tengo habilitada la opción esa que me da. En cuanto al error sigue apareciendo y ya dudo si hay q poner el icprog con windows api, invertir todas las opciones que da... Si me aconsejarais como configurar el pic con el puerto lpt1 lo agradeceria, indicándome que opciones marcar.
Comentarte fredyf que me he descargado el proteus pero que soy muy torpe y cuando simulo sigue sin aparecer nada, lo cual hace que me frustre más, aunque no sé si me has pasado el esquema eléctrico correcto, pues yo estoy utilizando el pic16f84a. Bueno dicho esto espero que podáis seguir ayudandome y que entre todos logremos que pueda hacer funcionar el lcd. Muchas gracias a todos :-)

Desconectado Leon Pic

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3610
    • Impresiones en 3D
Re: Ayuda lcd
« Respuesta #10 en: 31 de Julio de 2007, 02:55:12 »
Yo lo tengo con windows xp y lo programo por puerto serial.
A continuación es lo que dice el menú ayuda.

Configurar el Software
IC-Prog ha sido diseñado para funcionar con una gran variedad de programadores.

Se puede seleccionar el programador y varias opciones adicionales utilizando la opción de menú Ajustes / tipo Hardware.

Interfaz
IC-Prog puede controlar el programador utilizando acceso directo al puerto, o a través de la API de Windows (Application Programming Interface).

El uso de la opción API sólo es soportado en puertos serie. Use la API Windows bajo Windows NT.

El uso del puerto paralelo no es soportado actualmente bajo Windows NT y Windows 2000. El uso del puerto paralelo bajo Windows NT o Windows 2000 probablemente dará en error de permisos, "Permission".

Comunicación
Las siguientes señales pueden ser invertidas:

Data Out
Data In
Clock
MCLR
VCC
VPP
Prioridad del Proceso
Normal
Alta
Tiempo real
La prioridad del proceso habilita al IC-Prog para proveer mayor exactitud en la temporización de los pulsos de programación. Sin embargo, seleccionar una alta Prioridad de Proceso puede hacer que Windows funcione muy lento debido a que el CPU dedica mas tiempo de procesamiento al IC-Prog en lugar de a otros procesos.

 

Retardo I/O
Cuanto más rápida es la computadora utilizada mas alto debe ser el valor utilizado en el retardo I/O. Normalmente (P. Ej. en un PIII 650) un retardo I/O de 4 es suficiente.

Adjunte el archivo de ayuda completo.

Saludos :-/ :-/
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega al PADRE si no es por mi.

Desconectado huntergti

  • PIC12
  • **
  • Mensajes: 62
Re: Ayuda lcd
« Respuesta #11 en: 01 de Agosto de 2007, 15:11:31 »
Bueno, en primer lugar agradecer una vez más vuestras respuestas. Os comento que ya he conseguido simular con éxito el ejemplo de hola.asm, lo he conseguido con el programa pic ide simulator (antes no lo conseguía porque lo tenía mal configurado). Por desgracia sigo sin poder programar el pic y ya no se que probar, puesto que me he bajado el winpic800 y sigue dando error en la dirección 0000h :x. Verdaderamente no sé si el problema será que yo no tengo el cable para programarlo por el puerto serie y tengo que hacerlo por el puerto paralelo. Se os ocurre algo que pueda hacer?? Espero vuestras respuestas. Gracias una vez más :-/

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Ayuda lcd
« Respuesta #12 en: 01 de Agosto de 2007, 16:16:47 »
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado fredyf

  • PIC10
  • *
  • Mensajes: 19
Re: Ayuda lcd
« Respuesta #13 en: 01 de Agosto de 2007, 21:01:53 »
Hola:
Me parece es la respuesta correcta (creo que si no estas seguro de que tipo de programador usas en ajustes hardware puedes probrar algunos) gracias PalitroqueZ yo tenia dudas con el LPT1, yo tengo el JDM que es por comunicacion serial.

Sobre el proteus aqui hay un enlace sobre el tutorial seguro que te ayudara.
http://www.todopic.com.ar/foros/index.php?topic=10918.0
Te ajunto un archivo para solucionar el problema del video 11 parece que estos enlaces si estan bien.
Los hombres inteligentes quieren aprender, los demas enseñar

Desconectado huntergti

  • PIC12
  • **
  • Mensajes: 62
Re: Ayuda lcd
« Respuesta #14 en: 02 de Agosto de 2007, 15:26:16 »
Hola una vez más. Sé que soy un pesado, por no decir torpe. Os comento una vez más como me han ido mis avances con el pic (esto empieza a convertirse en un diario :P). Bueno hoy he probado lo que decía el link de Palitroquez, como no sigue sin funcionar, por lo que he marcado todo, desmarcado todo y nada de nada. Por cierto ya he quitado la casilla de verificación por lo que ya no es tan pesado (aunque se que si la pongo seguirá dando problemas de verificación). Puesto que no hay forma de que me salga, he decidido bajarme otras versiones de icprog, pero nada de nada. No sé en que fallaré así que he decidido todo lo que tengo marcado y que es lo que tengo. Empezaré por el ic prog, tengo puesto el Schaer programmer, retardo I/O 10, puerto lpt1, windows api, invert mlcr, invert vcc, en pestaña miscelánea prioridad normal, activar driver NT/XP/2000, lo demás no he tocado nada. Cuando cargo el programa por defecto se pone el pwrt y las otras sin marcar, el pic16f84a. Hasta ahi el ic prog. Lo programo en un micro pic trainer que tiene además del lcd un display y un bcd de 7segmentos. Bueno supongo que lo conocéis. Además también tengo integrado el micro pic trainer plus (pero este no lo utilizo, pues solo tiene el teclado matricial). Por supuesto para grabar levanto la pestaña que se pone sobre las patitas para enchufar el lcd, el display o el bcd. Pasemos al equipo que tengo, pentium 4 2,8 ghz, 1 giga de ram y 80 de disco duro. Si necesitáis más datos avisadme y os los doy, pero el caso es que quiero que me funcione el lcd. Por cierto, quizás deba tocar el lpt1 para que me funcione bien (es decir, meterme en el panel de control y tocar lo del puerto, puede ser??). En cuanto al proteus, el tutorial está genial pero me gustaría un ejemplo para ver como va en mplab ya que cuando simulo me da un mensaje que dice no se que de bussy. Pues esto es todo, muchas gracias por todo una vez más, espero que con más datos consigamos que me funcione. Si hace falta que me baje otro programador decidmelo, lo que sea con tal de ver por el lcd "HOLA". espero vuestras respuestas, espero que tengáis paciencia y no me dejéis como caso perdido :D


 

anything