TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: cactus_power en 15 de Mayo de 2008, 18:27:16

Título: Problema tonto (o eso espero)
Publicado por: cactus_power en 15 de Mayo de 2008, 18:27:16
Hola a todos.

He realizado un pcb q contiene un pic18f2550, un lcd, un lector rfid, transmisión usb.. etc.

Lo tenia 100 % montado y me funcionaba a la perfección. La semana pasada estuve fuera y esta semana al volver.. me encuentro que el programa funciona.. pero mucho más lento. El programa responde cada vez más lentamente.

A alguno le ha pasado?

Puede ser deterioro del cristal? O de los condensadores que lo acompañan? O ruido?

A ver los más expertos que me deciís.

Muchas gracias una vez más. A ver si me orientais

Saludos!
Título: Re: Problema tonto (o eso espero)
Publicado por: Azicuetano en 15 de Mayo de 2008, 18:55:11
Hola cactus_power!

Tienes el WDT activado? No creo que te pelees con temas RFID para un proyecto que haces por placer  :D  Te recomiendo que lo actives. Supuestamente ya no te volverá a pasar. De todas formas sería interesante que los compañeros comentaran experiencias similares a la tuya. Así podríamos entender un poco mejor las anomalías en el funcionamiento de los PIC.

Estaré así  :shock: a ver lo que comentan los colegas.


Un saludo desde Alicante.
Título: Re: Problema tonto (o eso espero)
Publicado por: cactus_power en 15 de Mayo de 2008, 19:09:41
Hola, gracias por tu rapido paso por aquí ;).

No tengo el WDT activado.

La verdad es que es la primera vez que he utilizado el micro PIC. Tengo entendido que el WDT resetea cada cierto tiempo el micro para que no se quede parado.

Mi programa utiliza un LCD con muchos menús que conforman una interfície así que no tendría demasiado sentido que se resetee el micro.. vaya que solucionaria el problema y tendria otro..

Sobre el RFID, no és demasiado complicado ya que utilizo un lector prefabricado que compré en www.trossenrobotics.com

La comunicación es serie y no tiene mucho más a entender...

En fin, gracias!

A ver si encontramos pq cada vez va más lento..
Título: Re: Problema tonto (o eso espero)
Publicado por: migsantiago en 15 de Mayo de 2008, 19:35:38
Hola

Una pregunta, ¿dejaste funcionando el circuito desde que te fuiste o cuando lo enciendes empieza a funcionar lentamente?
Título: Re: Problema tonto (o eso espero)
Publicado por: cactus_power en 15 de Mayo de 2008, 19:40:28
El circuito lo dejé apagado.

Cuando lo enciendo empieza a funcionar muy lentamente, cada vez más. Cuando se inicia el programa, en el LCD aparecen letras corriendo para una inicialización. Ahora cada vez corren más lentamente...
Título: Re: Problema tonto (o eso espero)
Publicado por: maunix en 15 de Mayo de 2008, 19:57:19
El circuito lo dejé apagado.

Cuando lo enciendo empieza a funcionar muy lentamente, cada vez más. Cuando se inicia el programa, en el LCD aparecen letras corriendo para una inicialización. Ahora cada vez corren más lentamente...


Puedes subir un esquemático del PIC y su circuito de oscilación? y de su circuito de MCLR?

Puedes mostrarnos como has configurado los FUSES del micro?
Título: Re: Problema tonto (o eso espero)
Publicado por: cactus_power en 15 de Mayo de 2008, 20:17:00
Todos los fusibles són:

#fuses HSPLL, NOWDT, XT, NOPROTECT, BROWNOUT, NOPUT, NOCPD, PLL1, USBDIV, CPUDIV1, VREGEN
#fuses NOSTVREN, NODEBUG, NOLVP, NOWRT, NOWRTD, NOIESO, NOFCMEN, NOPBADEN
#fuses NOWRTC, NOWRTB, NOEBTR, NOCPB, NOLPT1OSC, MCLR, NOXINST

El circuito de oscilacion no lo subo pq no tengo aqui esquematico. Consta de un oscilador de 4 mhz y dos condensadores de 22 pF en cada patilla y a massa. (Tipico)

El reset está conectado con una resistencia a valor alto  y mediante un pulsador a massa. Así cuando activo el pulsador ahi reset en el sistema.

Título: Re: Problema tonto (o eso espero)
Publicado por: migsantiago en 15 de Mayo de 2008, 20:22:21
Otra pregunta, ¿existe alguna variable que almacenes en memoria EEPROM y que controle el tiempo de alguna forma?
Título: Re: Problema tonto (o eso espero)
Publicado por: cactus_power en 15 de Mayo de 2008, 20:28:34
Utilizo una EEPROM externa para guardar datos... pero no tiene nada que ver con el tiempo.
Título: Re: Problema tonto (o eso espero)
Publicado por: manuelroin24 en 15 de Mayo de 2008, 20:33:26
probaste simplemente por curiosidad volver a programar el micro a ver q sucede??? si el problema volviera a suceder puede ser algun error en el codigo
Título: Re: Problema tonto (o eso espero)
Publicado por: cactus_power en 15 de Mayo de 2008, 20:42:01
Si, lo programé de nuevo al no funcionarme el micro. Pero no ha funcionado. El error de codigo no es pq hace 5 días funcionaba, y tb tengo una protoboard en la que me funciona. En el pcb, en cambio no funciiona correctament, sino q va lento.
Título: Re: Problema tonto (o eso espero)
Publicado por: Javicho en 15 de Mayo de 2008, 21:43:42
Lo mas probable es que sea el cristal, me refiero a que la pista que conecta al PIC se haya abierta apenas una micra y pueda que el cristal queda conctado en un momento y en otro momento se descoencta y se vuelve a conectar y asi sucesivamente por eso va lento, prueba resoldando el lado de las pistas del cristal por ultimo prueba cambiando el cristal hace tiempo me pasó algo parecido con un cristal y éste comenzó a fallar algo muy muy raro cambie el cristal por uno nuevo de mejor calidad y listo.

Javicho.
Título: Re: Problema tonto (o eso espero)
Publicado por: firepic en 16 de Mayo de 2008, 00:31:58
Saludos!

Caramba, me ha surgido una pregunta... no sé si ese sea el problema, pero igual me gustaría que algún experto me la aclarara...
el fuse PUT no se coloca generalmente activado?
Es decir: #Fuse PUT...
Qué influye el que se coloque NOPUT?
Seguramente es una pregunta estúpida, pero más vale pasar por idiota pero aprender...  :D

Ok nos leemos!  :mrgreen:

P.D. Estuve buscando un post donde el maestro Ariel explicó detalladamente los fuses, pero no lo encuentro... si alguien lo consigue y me da el link se lo agradecería.
Título: Re: Problema tonto (o eso espero)
Publicado por: Nocturno en 16 de Mayo de 2008, 00:48:34
PowerUpTimer

Es un fuse que mantiene al PIC sin arrancar un tiempo después de que le llegue la alimentación.
Si en tu aplicación no es crítico el tiempo de arranque, se recomienda tenerlo activo para dar tiempo al circuito a estabilizar la alimentación antes de empezar a ejecutar el programa.

http://www.todopic.com.ar/foros/index.php?topic=20189.0
Título: Re: Problema tonto (o eso espero)
Publicado por: firepic en 16 de Mayo de 2008, 02:04:13
Gracias nocturno!  :-/
Como siempre sacándome de mis lagunas mentales  :D 
Me ha quedado muy claro.
Gracias por tenerme paciencia y por tu tiempo!   :P
Ok nos leemos!  :mrgreen:
Título: Re: Problema tonto (o eso espero)
Publicado por: cactus_power en 16 de Mayo de 2008, 04:55:37
Hola, buenos dias a todos.

Gracias por vuestras respuestas.

Por lo pronto resoldaré la pista al cristal y compraré un cristal nuevo a ver si es eso...
Título: Re: Problema tonto (o eso espero)
Publicado por: Gonzalo_BlackHawk en 16 de Mayo de 2008, 18:18:53
Hola cactus, el problema es bastante peculiar, es mas te digo que no creo que ha mucha gente se le haya ralentizado de tal forma un PIC. Entre las causas que puedan dar lugar a extraño problema estan las soldaduras frias en el circuito del reloj. Uno las ve como soldaduras normales, pero el hecho es que presentan electricamente resistencia a la corriente eléctrica o bien directamente no conducen la misma. Es como tener una pista cortada, tal como ha dicho Javicho.
La verdad que ansio conocer que causa semejante efecto, luego nos cuentas.

Saludos.
Título: Re: Problema tonto (o eso espero)
Publicado por: cactus_power en 25 de Mayo de 2008, 08:22:30
Hola a todos, ya está solucionado! He tardado unos días pq en la tienda de mi ciudad no tenian el maldito cristal y me lo han tenido que enviar, y hasta final de semana ayer no me puse a mirarlo.

El problema se solucionó cambiando el cristal, pero.... seguía lento.. así que hice un "apaño" soldando puentes a las pistas que unian el micro con el cristal. Maravillosamente funcionaba bien ;).

Así que gracias a todos, y enhorabuena Javicho pq has acertado tu ;).

Ahora sólo me falta solucionar un último problema (más que nada porque lo he ido dejando) de visualización de una variable float por el LCD. Voy a pelearme un poco después de comer.

Gracias!
Título: Re: Problema tonto (o eso espero)
Publicado por: Mando31 en 25 de Mayo de 2008, 20:05:20
Que bueno que has solucionado tu problema pero para una mejor estetica de tu PCB porque no mejor en lugar de poner puentes, mejo soldas las pistas, mejor conocido como estañear las pistas con eso si hay alguna pista ligeramente cortada o tienes soldadura fria se soluciona y te evitas los feos puentes.

   Saludos desde méxico.