El Brown-Out también sirve para ...?

Hola a todos!

Mi pregunta de hoy se trata sobre el Brown-Out Reset de los PICs.

Lo que sé es: (y que es todo y lo único que sale en internet...)
planta un RESET cuando el Vcc baja de cierto nivel programado, para que el PIC no presente un comportamiento errático y deje la tendalada dentro de sí, por los bajos voltajes. Sé también cómo se configura, etc, etc.

Pero lo que no sale en ninguna parte es, qué hacer para que se mantenga el contenido de la RAM ante problemas del Vcc. ¿Es el Brown-Out el indicado para esto? O sea, ¿se mantiene el contenido de la RAM al usar el Brown-Out?

Concretamente se trata de un PIC que maneja electroválvulas, con una pre-etapa de relés. En su alimentación, el PIC tiene un condensador de 100nF cerca de el, para mantener la energía ante cortes muy pequeños (ruido). Pero parece que estoy sufriendo cortes más largos, y no me importa si el programa se resetea, pero quisiera que los datos de la RAM se mantengan. Además, quiero saber usar el BOR para proectos futuros.

Les agradezco!
Saludos!
 
En la hoja de especificaciones viene el voltaje minimo requerido para que los datos en RAM se mantengan, usualmente el valor minimo del brown-out es por encima de este valor....

Lo que puedes hacer es lo siguiente... configura el Brown-Out a un valor de voltaje mas elevado, siempre que ocurre el reset se levanta una bandera, asi que al inicio del programa lees estas banderas, si esta levantada entonces quiere decir que el Brown-Out reinicio el micro por bajo voltaje y posiblemnte siga bajando... asi que tienes que salvar los datos de RAM en la EEPROM, despues cuando se acabe el voltaje el micro iniciara en modo normal... solo recupera los datos y listo...

tambien puedes usar el ADC o algun supervisor de voltaje para monitorear el estado... cuando caiga debajo de cierto valor entonces entra a la rutina de salvado de datos

Aunque lo mejor siempre es darle una revisada a la fuente y los lugares donde se puedan estar colando esas espigas...
 
Humm, bueno, si, la RAM se va a la basura cuando Vcc baja de los 2,5V ...

es extraño que tenga estos problemas entonces, porque en paralelo con la fuente de poder existe un soporte hecho con baterías... y la fuente y las baterías tienen un diodo en su polo positivo indicando en dirección >> consumidor, de manera que la fuente nunca cargue las baterías.
La baterías eran 2 de 1,5V, haciendo 3V en total, pero quise alejarme del límite mínimo de voltaje, y conecté una batería más, en serie, de manera que ahora el soporte de baterías dé 4,5V.

Además, el condensador de 100nF en paralelo con la alimentación del PIC.

Si aún así llegara a sufrir cortes, queda una posibilidad por observar: hay relés funcionando, válvulas solenoide y además un transformador de 220V a 18V. Cada una de esas cosas está fuera de la caja metálica en la cual se encuentra el circuito con el PIC. Sirve de algo conectar la caja metálica a GND? a modo de evitar ruido electromagnético?

Por curiosidad, seguiré estudiando el tema del Brown-Out. La utilidad de mandar un reset por bajo voltaje me parece un poco inútil... no habrá una razón de más peso para su existencia?

Gracias!!!
 
Primero investiga por donde entra el ruido que acaba con tu programa... puede ser que no se esten corrompiendo los datos por bajo voltaje.. sino por espigas de voltaje elevadas...

Intenta desconectando la aplicacion de la fuente y corriendola con baterias... si el PIC no se resetea es que algo tiene la configuracion de la fuente y hay que rediseñarla...

En cambio si sigen los problemas entonces el ruido entre por alguna tierra o por alguna salida o entrada de control... lo cual es muy malo y quiere decir que debes proteger esos pines tambien....
 
Atrás
Arriba