Cuando la fuente de alimentación en un microcontrolador cae por debajo de un cierto umbral, se produce una disminución de la capacidad y la memoria RAM puede corromperse. Siempre que cada secuencia de apagado del circuito pueda significar una posible condición de caída de voltaje, siempre habilito el mecanismo de restablecimiento de detección de caída de voltaje cuando trabajo con microcontroladores.
Me preguntaba si hay situaciones en las que no se recomienda habilitar la función de reinicio de Brown-out.
microcontroller
brownout
m.Alin
fuente
fuente
Respuestas:
Como se señaló, habilitar el circuito de disminución de voltaje a menudo aumentará el consumo de corriente. Además, debido a que los fabricantes generalmente quieren asegurarse de que el circuito de caída de voltaje se dispare con cualquier voltaje que pueda ser lo suficientemente bajo como para hacer que funcionen otras partes del chip, muchas partes podrán operar a un voltaje más bajo con la reducción de voltaje desactivada . Por ejemplo, un controlador podría funcionar la mayor parte del tiempo hasta 1,5 voltios a temperatura ambiente pero, bajo ciertas condiciones estresantes (como temperatura elevada) podría funcionar mal a 1,99 voltios. Para asegurarse de que el dispositivo se reinicie en cualquier condición en la que pueda ocurrir un mal funcionamiento, el circuito de caída de voltaje podría estar diseñado para dispararse a 2.1 voltios +/- 100mV.
Si un dispositivo con dicho controlador funcionara con dos baterías alcalinas AA, habilitar el circuito de caída de voltaje puede hacer que el dispositivo quede inutilizable con un voltaje de batería de 1.1 voltios por celda, y es probable que deje de funcionar para cuando el voltaje alcance 1.05 voltios por celda. La desactivación del circuito de caída de voltaje probablemente extendería la operación a al menos 0.9 voltios por celda, y posiblemente incluso 0.75 voltios por celda. Si no hay un mal funcionamiento posible que pueda ocurrir a bajo voltaje podría causar algún daño más allá del aumento de la descarga de las baterías basura, deshabilitar el circuito de caída de voltaje sería una forma simple de mejorar la vida útil de la batería, incluso si no reduce el consumo de corriente de las baterías utilizables.
fuente
Todo tiene tolerancias, por lo que el nivel de reinicio de oscurecimiento debe establecerse un poco por encima del nivel mínimo en el que se garantiza que el chip funcione correctamente.
Por lo tanto, el oscurecimiento podría comenzar mucho antes de que el chip no funcione correctamente. Por lo tanto, debe preguntarse, para esta región, dónde el chip podría funcionar bien pero no puede estar seguro, ¿elegiría
Si el costo del mal funcionamiento no es mucho mayor que el costo de no funcionar en absoluto, se preferirá la primera opción. Piense en la función de ping en la 'caja negra' de un avión. ¡De todos modos, déjalo continuar si hay la más mínima posibilidad de que dé un ping!
Por otro lado, considere la activación de una bomba o un airbag de automóvil. Si existe la más mínima posibilidad de que se dispare por accidente debido a un bajo voltaje, es mejor que se apague solo. ¡Eso, por supuesto, supone que cerrar los medios significa no encender!
Hay situaciones en las que no hay una buena opción disponible. Considere el infame primer lanzamiento del cohete Ariane V. Las computadoras de control de dirección no funcionaron correctamente (en este caso, no debido a baja potencia). Que debe hacer Seguir adelante probablemente significa conducir en la dirección equivocada, pero dejar de fumar significa no dirigir en absoluto, lo que tiene el mismo resultado. Tampoco es una buena perspectiva para las personas en el búnker de control que el cohete pueda entrar :(
Como comenta Ross, una copia de seguridad es, por supuesto, una buena idea para un sistema de misión crítica. Pero eso cambia el problema de diseño a esa copia de seguridad. ¿Qué pasa si eso falla? (En la práctica, a menudo hay 3, activos todo el tiempo, utilizando un voto mayoritario). En el caso del Ariane 5, fallaron tanto las computadoras primarias como las de respaldo (aunque no por su propia culpa, pero esa es otra historia). fue que algún otro sistema (tal vez incluso un humano en la sala de control) detectó que todo estaba fuera de control y desencadenó la autodestrucción. Es mejor que el cohete explote en el aire y se caiga en pedazos pequeños en el mar para que continúe su vuelo en una sola pieza en una dirección aleatoria.
fuente
Si no le importa el reinicio (por ejemplo, se puede confiar en el usuario para que lo apague y vuelva a encender si las cosas no funcionan perfectamente, y no es posible dañarlo) y el consumo de energía es importante, apagarlo puede ahorrar algo microamperios (o si le importa, puede usar un mejor circuito externo que el que está integrado).
Si el BOR interno es inadecuado para la tarea (las tolerancias pueden no ser apropiadas, por ejemplo), entonces también puede apagarlo y usar algo externo.
Un requisito interesante para algunos propósitos es que necesita saber el voltaje máximo por debajo del cual se garantiza que cosas como las EEPROM no funcionen, para que el BOR pueda inhibir la operación y no garantizar la corrupción. Eso podría ser un poco sutil para algunos circuitos BOR incorporados.
fuente
Puede optar por desactivar el BOR si hay un error en el que el BOR no funciona correctamente.
Consulte el número 15 en PIC32MX534 / 564/664/764 Errata de silicio familiar y aclaración de la hoja de datos .
fuente
If you want to reduce the current consumption in sleep mode. E.g. for the ATmega328P you can reduce it by a 17uA by turning BOD off. Turn everything else off while sleeping and the chip consumes a tiny 1.8uA!
(Source: http://www.rocketscream.com/blog/2011/07/04/lightweight-low-power-arduino-library/)
fuente
There are situations where you might like to use an external, custom-built brown-out circuit instead.
There are microcontrollers where the resolution of brown-ot levels is quite small.
Let's assume you work with a µc where the two highest brown-out levels are 4.3 V and 2.7 V (common in case of AVR). You have determined that at the frequencies you use, 2.7 V is unsafe. However, 4.3 V would be too high, as it would limit the length of running time after a power fail.
I often have to work with devices which can frequently lose connection to the external power supply and then have to survive on capacitors or batteries. Having a brown-out level of 4.3 V would lead to the device switching off too soon. 2.7 would lead to data corruption. However, if for example, 3.5 V would be a safe brown-out level, you might want to make an external brown-out circuit which works by pulling the reset line of your microcontroller. In this case the internal brown-out circuit is of no use and can be disabled.
In case you have more processors in the same system, it makes sense to use a single external reset controller for all of them. In this case, disabling the individual brown-out detectors in the processors is not only useful for the marginal advantage of saving some power, but is required to avoid the situation where some processors are in reset and others are still running.
fuente
We had to toggle the VBOR off and back on during one part of startup due to a bug in the silicon on the microcontrollers we were using. Charging up the caps on the voltage pump would drain the device to momentarily just above minimums and the VBOR kept tripping. So we turned off the VBOR during powerup and turned it on about 10ms later.
fuente