Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

29/07/2010 #1


Porque se cuelga el PIC 16f877?
Buenas:
Mi nombre es Victor y es la primera vez que participo de un foro de electronica, siempre los leo pero nunca me atrevi a preguntar, pero de veras espero que puedan ayudarme por favor.
Mi problema es el siguiente: tengo hecho un sistema de llamadas de emergencia en una clinica, este sistema tiene 27 pulsadores (uno por cuarto) que dan los pulsos de entrada al circuito de control, y tiene un display de 7 segmentos que muestra el numero de cuarto respectivo cada vez que ocurre una llamada, ademas tiene como indicador una alarma sonora. En resumen, el sistema funciona bien hasta que se cuelga, mas no encuentro la razon de porque sea.
Adjunto al correo les envio el esquema del ckto de control, como veran se usa dos PIC 16f877: uno para el control de las entradas y otro para el control de las salidas.
Gracias por la ayuda que me puedan brindar!!

Saludos cordiales
29/07/2010 #2


Respuesta: Porque se cuelga el PIC 16f877?
vicxo:

Primero que nada supongo que ya has revisado exaustivamente el software, y no se te está colgando por algún bug de soft. Esto es muy importante que lo revises muy bien.

La observación que hago de tu circuito:

- Estás usando pulsadores, cableados, que están alejados de tu PIC a seguramente varios metros de distancia. Esto hace que sea una muy buena antena. La energía estática, y radiaciones que entran en ella, van derechito al PIC. Esto puede estar haciendo que te produzcan picos de tensión o corriente en la entrada y te cuelguen el micro. Yo separaría las entradas del micro, o con transistores (que las entradas vayan a la base de un transistor, y que el transistor entre en el micro), o con opto-acopladores (que aisle totalmente la entrada de los pulsadores del micro).

Espero que te sirva de ayuda.
29/07/2010 #3

Avatar de Scooter

Respuesta: Porque se cuelga el PIC 16f877?
Cualquier circuito "serio" debe de cumplir al menos lo siguiente:

- Fuente de alimentación de calidad, un 7805 no es uno de ellos, un LM323 filtra mucho mejor
- Fuente de alimentación protegida a la entrada con un varistor que elimine pulsos de la red
- TODAS las entradas SIEMPRE OPTOACOPLADAS con una impedancia de entrada baja (como muchísimo 1K). Las únicas entradas que pueden ir directas son los pulsadores de la tapa de la caja del micro.
- Poner DOS FUENTES DE ALIMENTACIÓN completas. Si optoacoplas y alimentas por los dos lados del optoacoplador con la misma fuente no haces nada. Si usas el mismo transformador tampoco

- Revisa exhaustivamente el software, suele dar problemas
- Implementa SIEMPRE al menos un circuito de watchdog que permita recuperar el sistema si se cuelga y en ese caso que tenga una memoria interna para saber que se ha colgado.
- Implementa un segundo watchdog que verifique que el reloj del sistema funciona (todo esto suele ir dentro del propio micro, úsalo, si no lo lleva cambia a otro derivado que lo tenga.


Todo lo que no sea seguir estas directrices (y alguna mas que seguro que se me olvida) es, como decimos por aquí; "ahorrar una peseta y perder un duro (moneda de 5 pts)"

Con 27 cables de unas decenas de metros sin optoacoplar, impedancias de entrada de 16K, y supongo que pasando por los conductos eléctricos, lo sorprendente sería que funcionase.
29/07/2010 #4

Avatar de Meta

Respuesta: Porque se cuelga el PIC 16f877?
Puedes ooptar por el PIC16F887, sustituto actual del 16F87A que ya el fabricante no los fabrica, si los encuentras, será hasta fin de existencias de los stock.

Ver consejo1


Ver consejo2


Saludop.
30/07/2010 #5


Respuesta: Porque se cuelga el PIC 16f877?
Buenas con todos:
Primero que nada agradecerles a todos los comentarios. De acuerdo a algunas recomendaciones que me indicaron, me puse a revisar el software (que lo hice en el ccsc) y en una de las directivas decia:
#fuses NOLVP,HS,NOWDT
La duda entonces a partir de esto es: estoy usando un cristal de 4Mhz, y de acuerdo a las especifiaciones encontradas la directiva HS para el cristal podria estar provocando algun error? esto se los consulto ya que HS es indicado para cristales mayores de 4MHz.
Creo mucho que ese podria ser el problema, porque el circuito funciona bien por un buen numero de horas continuas, pero a las 10 horas mas o menos se cuelga.
Respecto a la parte de aislar a las entradas, tendre que disenar una nueva placa para probar la teoria recomendada, y les estare comentando como va el resultado!!
Nuevamente gracias por el apoyo.
30/07/2010 #6


Respuesta: Porque se cuelga el PIC 16f877?
No creo que el problema sea haber colocado oscilador HS para un cristal de 4 Mhz. De todos modos, nada se pierde con probar...
31/07/2010 #7

Avatar de Scooter

Respuesta: Porque se cuelga el PIC 16f877?
Para saber si es problema de ruidos o de soft, prueba el circuito en "condiciones ideales", es decir en tu casa con una buena alimentación y con cables de 2cm, si funciona bien ya sabes que son los ruidos.
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.