Autor Tema: En los cortes de energía se bloquea el pic, puede corregirse?  (Leído 298 veces)

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

Conectado johenrod

  • PIC12
  • **
  • Mensajes: 83
En los cortes de energía se bloquea el pic, puede corregirse?
« en: 28 de Julio de 2020, 19:02:40 »
cordial saludo, tengo un pic 16f628a leyendo 4 pulsadores y activando 4 salidas, me ha sucedido que al producirse en zag (corte instantáneo de energía del suministro publico) el pic se cuega y no trabaja mas , para solucionar esto debo desconectar el suministro del pic y conectarlo nuevamente para que se reactive el pic.

hay algún registro que detecte esto y arranque solo cuando se cuelga?.
gracias de antemano.

Desconectado Robert76

  • PIC18
  • ****
  • Mensajes: 330
Re:En los cortes de energía se bloquea el pic, puede corregirse?
« Respuesta #1 en: 28 de Julio de 2020, 19:30:11 »
Hola, activa el WDT.

Desconectado remi04

  • PIC18
  • ****
  • Mensajes: 487
Re:En los cortes de energía se bloquea el pic, puede corregirse?
« Respuesta #2 en: 28 de Julio de 2020, 19:38:55 »
Lo primero, activa Brown Out Reset, desde los fuses.  Eso hará reset cuando el voltaje caiga por debajo de un umbral razonable.

Seguidamente puedes usar el Wathdog.  Tienes que ir reseteandolo periódicamente, así el pic sabe que el programa está vivo y corre. Si dejas de resetearlo y vence el tiempo se produce un reset.

   Pero eso son dos “parches” para actuar cuando pase el marrón.

  Lo ideal es evitar que suceda, para ello tienes que proveer al pic de todo cuanto necesite para evitarlo físicamente, como es, colocar condensadores de desacople, electroliticos que garanticen ausencia de rizado y transitorios, chokes, placas con planos de tierra en torno al procesador, etc...    si te pasa eso por un simple amago de apagón es por que estás muy corto de condensadores electroliticos.

   También , si lo que manejan los puertos son cargas inductivas hay que hacer unas cuantas cosas más.

   Y cuidado con el pin Máster Clear.   Resistencia pullup 4k7 a vdd y nada más, evita colocar ahí un pulsador para hacer función de reset, y si lo haces, que el pulsador esté lo más cerca posible del pin.


 

  Saludos.

Conectado johenrod

  • PIC12
  • **
  • Mensajes: 83
Re:En los cortes de energía se bloquea el pic, puede corregirse?
« Respuesta #3 en: 29 de Julio de 2020, 09:32:21 »
gracias por sus respuestas..
no tengo activado el reset, lo estoy utilizando como entrada. activare el Brown Out Reset ( nunca lo utilice) y como implemento la periodicidad el Wathdog ahí si me perdí.
saludos.

Desconectado remi04

  • PIC18
  • ****
  • Mensajes: 487
Re:En los cortes de energía se bloquea el pic, puede corregirse?
« Respuesta #4 en: 29 de Julio de 2020, 09:53:02 »
gracias por sus respuestas..
no tengo activado el reset, lo estoy utilizando como entrada. activare el Brown Out Reset ( nunca lo utilice) y como implemento la periodicidad el Wathdog ahí si me perdí.
saludos.

  Miras el datasheet del pic para ver la periodicidad del wathdog, en algunos es configurable. Una vez sepas la periodicidad, por ejemplo 2 segundos, ya sabes que tu código tiene que estar poniendo a cero el contador antes de que llegue a dos segundos. Así sucesivamente.

  Eso se hace en el bucle principal del programa y en todas las rutinas.  Hay que tener cuidado con......  todo.    Especialmente los delay, los getc, los gets, etc.  tienes que mentalizarte a la hora de escribir el código que si pasan 2 segundos sin resetear Wathdog, PC y PClath se van a cero y el programa empieza de nuevo.

  También puedes programar una interrupción por ejemplo, por desborde de un timer, y en el handler de interrupción pones el wathdog a cero.  así es más cómodo por que ya no tienes que estar atento a eso, salvo en los delay y en las esperas de recepción, etc.