Atmel Tiny 13 GCC, Frage zur brown out detection

Gast #3505149
Lesenswert?

Hallo,
Ich habe ein kleines mikrocontroller Projekt das soweit gut 
funktioniert.
Standardmäßig habe ich die BOD deaktiviert um Standby Strom zu sparen.

Meine Frage ist nun:
Was passiert wenn die Spannung einbricht, ich also den Controller von 
seiner Versorgung trenne?
Bisher verhält er sich genau wie beim reset. Da wenn überhaupt die 
komplette Stromversorgung gekappt wird, also auch die der LEDs kann ja 
auch nichts passieren. Maximal ein winzig kleiner Moment der mich nicht 
stört.



Nachdem die Spannung wieder anliegt fängt der Controller doch wieder neu 
in der mainroutine an bei der sowieso erstmal alles initialisiert wird, 
oder?

Überall wo ich lese steht aber etwas von undefinierten Zuständen die 
entstehen können, wie groß ist diese Gefahr in meinem Fall?
Gast #3505190
Lesenswert?

Wolfi schrieb:

> Was passiert wenn die Spannung einbricht, ich also den Controller von
> seiner Versorgung trenne?
> Bisher verhält er sich genau wie beim reset.

Dann hast du Glück gehabt.

> Nachdem die Spannung wieder anliegt fängt der Controller doch wieder neu
> in der mainroutine an bei der sowieso erstmal alles initialisiert wird,
> oder?

Wenn du Glück hast: ja.

> Überall wo ich lese steht aber etwas von undefinierten Zuständen die
> entstehen können, wie groß ist diese Gefahr in meinem Fall?

Das hängt im Wesentlichen von den Eigenschaften der verwendeten 
Stromversorgung ab. Prinzipiell ist es (wie so oft in der Elektronik) 
ein Kompromiß.

Einerseits erhöhen Siebmaßnahmen in der Versorgung die 
Wahrscheinlichkeit, daß BrownOut-Effekte auftreten, andererseits 
verringern sie aber auch die Wahrscheinlichkeit, daß EMV-Störungen im 
laufenden Betrieb auftreten.

Da es aber bei modernen µC möglich ist, die BrownOut-Funktionalität auch 
nur in den Schlafmodi abzuschalten, spricht eigentlich nichts dagegen, 
das einfach zu tun und so beide Vorteile zu haben, geringen 
Stromverbrauch im Schlafmodus und hohe Toleranz gegen 
Brownout-Effekte.

Leider ist der Tiny13 nicht dazu fähig, das zu tun. Da hilft dann nur, 
einen entsprechend hohen Aufwand beim Design der Stromversorgung zu 
betreiben.
Gast #3505221
Lesenswert?

Ich schreiben kein EEPROM oder so. Nur einem PWM Ausgang. ADC, Taster 
und LEDs.
Alles wird in der mainroutine initialisiert.

Was mich bisschen verwundert ist das"wenn du Glück Hast ja"
Wo startet der Controller nachdem die anlegen der Versorgungsspannung?
Gast #3505275
Lesenswert?

Wolfi schrieb:

> Was mich bisschen verwundert ist das"wenn du Glück Hast ja"
> Wo startet der Controller nachdem die anlegen der Versorgungsspannung?

Immer mit dem Resetvektor. Aber selbst bei dieser einfachen Aufgabe kann 
er schon scheitern, wenn beim Startup entweder der Takt oder die 
Spannung noch nicht hinreichend stabil (und im Falle der Spannung auch 
hoch genug) sind.

Viel schlimmer ist aber: BrownOut-Effekte können permanente Schäden am 
Flash-Inhalt bewirken. D.h.: es kann danach schlicht Müll im Controller 
stehen. Er ist also von da ab nichtmal mit einem Reset wieder zu einer 
sinnvollen Funktion zu bewegen.

Oder noch schlimmer: nur Teile des Flash sind korrumpiert. Dann startet 
er zwar vielleicht noch normal, macht aber dann Mist, wenn er Funktionen 
anspringt, die im korrumpierten Flash-Bereich liegen.
Gast #3505329
Lesenswert?

Ich benutze momentan noch USB als Stromversorgung, allerdings ist das 
Gerät gedacht für den Betrieb an einem Akku. Ich habe bisher immer BOD 
aktiviert und nie viel Wert gelegt auf die Sleep modi. Nun bin ich aber 
aus gegebenem Anlass drübergestolpert.

Standby Strom ist 16µA ohne BOD
und 44µA mit BOD auf 1.8V

gemessen mit nem billigen DMM und SSpannungsversorgung 5V vom USBASP, 
nachdem ich den tiny in den Power down versenkt habe...
----
Ich tue mich aber schwer damit das abzuwägen was sinnvoll ist daher die 
Frage nach Rat.

30µA mehr  30  24  30 * 12=259200 ->also 260mAh pro Jahr
#3505491
Lesenswert?

Wolfi schrieb:

> Überall wo ich lese steht aber etwas von undefinierten Zuständen die
> entstehen können, wie groß ist diese Gefahr in meinem Fall?

Wenn die Versorgungsspannung komplett weggenommen wird ist das noch eher 
unkritisch. Da macht er dann halt kurz mal irgendwas bis ihm der Saft 
endgültig ausgeht (kommt dann halt drauf an was man damit macht, ob man 
dieses kurzzeitige irgendwas akzeptieren kann).

Kritischer ist es, wenn die Versorgungsspannung nicht komplett weg fällt 
sondern nur kurz einbricht. Dann macht er auch kurz irgendwas fängt 
danach aber nicht unbedingt wieder von vorne an sondern macht dann mit 
irgendwas weiter. Und was da bei rauskommt das weiß dann keiner mehr. 
Dann ist man eben bei den undefinierten Zuständen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren