mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Frage zum Brown out


Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen

Ich hätte mal eine Frage zum Brown out. Wie lange Muss die Spannung
unter den Schwellwert sein damit ein Brownout Reset ausgelöst wird ???
Da meine Schaltung auf grund von einer Zündanlage manchmal für ca.4-5µS
auf 1V abfällt habe ich Angst das das einen Brown out auslösen könnte.
Jedoch soll der erst Ansprechen wenn die Spannung dauerhaft unter 4,7V
ist. Im Datenbalt zum ATTiny25 habe ich leider nix zu den Zeiten
gefunden :(

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
``The BOD circuit will only detect a drop in VCC if the voltage
stays below the trigger level for longer than tBOD given in
"System and Reset Characteristics" on page 170.''

tBOD   Min Pulse Width on Brown-out Reset   2 µs

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eigentlich gibt es dazu in jedem Datenblatt eine Angabe.

>Min Pulse Width on
>Brown-out Reset
>typ 2 μs

Oliver

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg Wunsch wrote:
> ``The BOD circuit will only detect a drop in VCC if the voltage
> stays below the trigger level for longer than tBOD given in
> "System and Reset Characteristics" on page 170.''
>
> tBOD   Min Pulse Width on Brown-out Reset   2 µs

Oh jetzt habe ich es auch gefunden :D
Vielen Dank

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wird der Sram und die Register nach einem Brown out auch wieder zurück 
gesetzt ??? oder könnte ich peer Software es irgend wie möglich machen, 
das z.B. ich erst nach 5 Brown outs im Programablauf reagiere ???

Autor: Winfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Schaltung sollte eigentlich so designt sein, dass Brown-Out die 
Ausnahme im laufenden Betrieb bleibt. Gerade wenn du von 5us sprichst, 
warum fängt sowas kein Kondensator ab?

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Winfried wrote:
> Eine Schaltung sollte eigentlich so designt sein, dass Brown-Out die
> Ausnahme im laufenden Betrieb bleibt. Gerade wenn du von 5us sprichst,
> warum fängt sowas kein Kondensator ab?

Na ja das Problem ist das das Gerät ja nicht gleich alarm schlagen soll
blos weil die spannung mal kurz auf 3V Abfällt. Sondern erst wenn die
spannung dauerhaft unter 4,3V Fällt, doch in dem Fall schaltet sich ja
der AVR ab. Leider kann ich das nicht ganz elegant über einen ADC kanal
machen, da ich keinen mehr frei habe. Dachte das wäre ne schicke lösung
mit dem Brown out. Mus dann woll noch 1-2 Nächte drüber schlafen bis mir
was passendes eingefallen ist.

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn bei deinem ADC Vref==VCC ist kannst du
ja die Spannung der internen Bandgap Diode Messen (1,22V)
und daraus auf Vref(==VCC) zurückrechnen.

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tim wrote:
> Wenn bei deinem ADC Vref==VCC ist kannst du
> ja die Spannung der internen Bandgap Diode Messen (1,22V)
> und daraus auf Vref(==VCC) zurückrechnen.

Das klingt sehr interesant und wie messe ich die ???
Und vorallem wie rechne ich das zurück ??? Dreisatz ???
5V Vcc ==1,22V an der Diode

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Und vorallem wie rechne ich das zurück ??? Dreisatz ???
>5V Vcc ==1,22V an der Diode

Vcc ist ja variabel. Über einen Spannungsteiler sollte man dann noch aus 
5V 1,22V machen...
Wenn als0 5V 1,22V entsprechen, wie ist der Spannungsteiler zu 
dimensionieren und welche Spannung entspricht 2,7V?

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
STK500-Besitzer wrote:
>>Und vorallem wie rechne ich das zurück ??? Dreisatz ???
>>5V Vcc ==1,22V an der Diode
>
> Vcc ist ja variabel. Über einen Spannungsteiler sollte man dann noch aus
> 5V 1,22V machen...
> Wenn als0 5V 1,22V entsprechen, wie ist der Spannungsteiler zu
> dimensionieren und welche Spannung entspricht 2,7V?

Dann brauche ich ja wieder einen freien Pin, den habe ich aber leider 
nicht. Dann kännte ich ja auch gleich über einen Spanungsteiler auf die 
Battriespannung kommen. hätte der Attiny25 ein Pin mehr wäre alles 
geritzt :D Hab im Datenblatt gesehen, das man auch die VCC als referenz 
nehmen kann. vieleicht sollte ich das machen den dann entfählt ja der 
Aref pin und ich hab wieder ein Pin frei quasi Problem gelöst :D hat 
schon jemand erfahrung damit gesammelt VCC als Ref zu nehmen ????

Autor: Stefan Ernst (sternst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rene Schir wrote:

> Dann brauche ich ja wieder einen freien Pin

Nein, du misst die Bandgap-Referenz direkt "intern" über die 
entsprechende MUX-Einstellung. Der gemessene Wert hängt natürlich von 
Vref ab. Wenn Vref nun gleich VCC ist, gilt, je niedriger VCC, desto 
größer der Messwert. Du brauchst keinerlei externe Beschaltung dafür.

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wegen Berechung:
Vcc==5V -> 1,22V/5V -> 22,4% -> ADwert von ca 250
Vcc==3V -> 1,22V/3V -> 40,6% -> ADwert von ca 416

und zurück:
ADwert 320 -> 31,25% -> 1,22V/31,25% -> 3,9V

also VCC = Vref = 1,22*1024/ADwert

Der Tick bei der Messung ist halt das Vref sich verändert
und die zu messende Spannung Vbg gleich bleibt :-)

PS: Mir währe neu das sich der Vref Pin als normaler I/O Port
benutzen lässt....

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan Ernst wrote:
> Rene Schir wrote:
>
>> Dann brauche ich ja wieder einen freien Pin
>
> Nein, du misst die Bandgap-Referenz direkt "intern" über die
> entsprechende MUX-Einstellung. Der gemessene Wert hängt natürlich von
> Vref ab. Wenn Vref nun gleich VCC ist, gilt, je niedriger VCC, desto
> größer der Messwert. Du brauchst keinerlei externe Beschaltung dafür.

Und wie wäre die ADMUX einstellung beim Attiny25 ???

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tim wrote:
> Wegen Berechung:
> Vcc==5V -> 1,22V/5V -> 22,4% -> ADwert von ca 250
> Vcc==3V -> 1,22V/3V -> 40,6% -> ADwert von ca 416
>
> und zurück:
> ADwert 320 -> 31,25% -> 1,22V/31,25% -> 3,9V
>
> also VCC = Vref = 1,22*1024/ADwert
>
> Der Tick bei der Messung ist halt das Vref sich verändert
> und die zu messende Spannung Vbg gleich bleibt :-)
>
> PS: Mir währe neu das sich der Vref Pin als normaler I/O Port
> benutzen lässt....

Beim ATTiny25 und 15 ist das kein problem

Autor: Uwe ... (uwegw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rene Schir wrote:
> hat schon jemand erfahrung damit gesammelt VCC als Ref zu nehmen ????

Ja, das klappt wunderbar. Die Kennlinie ist zwar nichtlinear, aber das 
ist für die Überwachung eines Schwellwertes ja egal.

ADMUX-Einstellung: MUX3..0 auf 1100.
Die damit ausgewählte Spannung beträgt beim Tiny25 min. 1,0V typ. 1,1V 
max. 1,2V.

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe ... wrote:
> Rene Schir wrote:
>> hat schon jemand erfahrung damit gesammelt VCC als Ref zu nehmen ????
>
> Ja, das klappt wunderbar. Die Kennlinie ist zwar nichtlinear, aber das
> ist für die Überwachung eines Schwellwertes ja egal.
>
> ADMUX-Einstellung: MUX3..0 auf 1100.
> Die damit ausgewählte Spannung beträgt beim Tiny25 min. 1,0V typ. 1,1V
> max. 1,2V.

OK und Was ist mit REFS2...0. Ist es egal welche referens ich dafür 
nehme ???

Autor: Tim T. (tim_taylor)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum spendierst du dem Ding nicht einfach einen Kondensator und ne 
Diode? Alles andere ist irgendwie gemurkst...

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tim T. wrote:
> Warum spendierst du dem Ding nicht einfach einen Kondensator und ne
> Diode? Alles andere ist irgendwie gemurkst...

Und dann ??? ich muß dazu sagen das die Batteriespannung überwacht 
werden SOLL, da Das gerät bei einem dauerhaften unterschreiten einer 
gewissen Betriebsspanung in ein programierten Notlauf gehen soll

Autor: Tim T. (tim_taylor)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Denkansatz: Der Kondensator ist auch nicht unendlich groß...

Wobei für das was du vor hast der Brownout der falsche Weg ist.

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tim T. wrote:
> Denkansatz: Der Kondensator ist auch nicht unendlich groß...
>
> Wobei für das was du vor hast der Brownout der falsche Weg ist.

Ja zu der Erkentnis bin ich auch schon gekommen :D

Autor: Tim T. (tim_taylor)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rene Schir wrote:
> Tim T. wrote:
>> Denkansatz: Der Kondensator ist auch nicht unendlich groß...
>>
>> Wobei für das was du vor hast der Brownout der falsche Weg ist.
>
> Ja zu der Erkentnis bin ich auch schon gekommen :D

Bin davon ausgegangen das du den Controller einfach nur vor 
Fehlverhalten beim Brown Out schützen willst.
Dann eben doch mit der Internen Referenz, den Kondensator würde ich aber 
doch vor den Vcc hängen um die Peaks der Zündanlage zu puffern.

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tim T. wrote:
> Rene Schir wrote:
>> Tim T. wrote:
>>> Denkansatz: Der Kondensator ist auch nicht unendlich groß...
>>>
>>> Wobei für das was du vor hast der Brownout der falsche Weg ist.
>>
>> Ja zu der Erkentnis bin ich auch schon gekommen :D
>
> Bin davon ausgegangen das du den Controller einfach nur vor
> Fehlverhalten beim Brown Out schützen willst.
> Dann eben doch mit der Internen Referenz, den Kondensator würde ich aber
> doch vor den Vcc hängen um die Peaks der Zündanlage weg zu haben.

Ja hab neben ein paar 100nF noch einen 100µF zwischen VCC und GND. 
welche interne Referens muß ich den nehmen ??? 1,1V oder 2,56V alles 
ohne Beipaß denke ich mal weil ich ja an Aref 5V habe.

Autor: Tim T. (tim_taylor)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rene Schir wrote:
> Tim T. wrote:
>> Rene Schir wrote:
>>> Tim T. wrote:
>>>> Denkansatz: Der Kondensator ist auch nicht unendlich groß...
>>>>
>>>> Wobei für das was du vor hast der Brownout der falsche Weg ist.
>>>
>>> Ja zu der Erkentnis bin ich auch schon gekommen :D
>>
>> Bin davon ausgegangen das du den Controller einfach nur vor
>> Fehlverhalten beim Brown Out schützen willst.
>> Dann eben doch mit der Internen Referenz, den Kondensator würde ich aber
>> doch vor den Vcc hängen um die Peaks der Zündanlage weg zu haben.
>
> Ja hab neben ein paar 100nF noch einen 100µF zwischen VCC und GND.
> welche interne Referens muß ich den nehmen ??? 1,1V oder 2,56V alles
> ohne Beipaß denke ich mal weil ich ja an Aref 5V habe.

Also der 100uF reicht locker um das Absacken der Spannung zu 
überbrücken. Welche Referenz du benutzt ist ansich latte, nimm die 2,56V 
ohne externen Bypass, da steht zumindest dabei das er extern von PB0 
entkoppelt ist. Wobei das eigentlich auch bei 1,1V so sein sollte...
Also REFS2..0 = 110 und MUX3..0 = 1100

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ist das wirklich so kompliziert?

Die einzustellende Refenzspannung ist Vcc und der MUX auf die Bandgap 
und messen und etwas rechnen.

Beim Tiny25 also MUXX auf 1100 (haz oben schon jemand geschrieben) und 
REFS2..0 auf 000.

So schlimm ist dich die Tabbelle im Datenblatt garnicht...

Gruß aus Berlin
Michael

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Tim T. wrote:
> Also der 100uF reicht locker um das Absacken der Spannung zu
> überbrücken. Welche Referenz du benutzt ist ansich latte, nimm die 2,56V
> ohne externen Bypass, da steht zumindest dabei das er extern von PB0
> entkoppelt ist. Wobei das eigentlich auch bei 1,1V so sein sollte...
> Also REFS2..0 = 110 und MUX3..0 = 1100

wie bekommt so die Betriebsspannung raus?
Eine stabile BandGap Quelle mit einer stabilen Referenz zu messen???

Gruß aus Berlin
Michael

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael U. wrote:
> Hallo,
>
> ist das wirklich so kompliziert?
>
> Die einzustellende Refenzspannung ist Vcc und der MUX auf die Bandgap
> und messen und etwas rechnen.
>
> Beim Tiny25 also MUXX auf 1100 (haz oben schon jemand geschrieben) und
> REFS2..0 auf 000.
>
> So schlimm ist dich die Tabbelle im Datenblatt garnicht...
>
> Gruß aus Berlin
> Michael

Ja jetzt leuchtet es mir ein. Da ja bei mir VCC==Aref kann ich doch 
theoretisch sogar Aref nehmem und die Bandgap messen oder ???

Autor: Tim T. (tim_taylor)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael U. wrote:
> Hallo,
>
> Tim T. wrote:
>> Also der 100uF reicht locker um das Absacken der Spannung zu
>> überbrücken. Welche Referenz du benutzt ist ansich latte, nimm die 2,56V
>> ohne externen Bypass, da steht zumindest dabei das er extern von PB0
>> entkoppelt ist. Wobei das eigentlich auch bei 1,1V so sein sollte...
>> Also REFS2..0 = 110 und MUX3..0 = 1100
>
> wie bekommt so die Betriebsspannung raus?
> Eine stabile BandGap Quelle mit einer stabilen Referenz zu messen???
>
> Gruß aus Berlin
> Michael

Punkt für dich, hab da ehrlich gepennt...
Klar muss es Vcc als Referenz (REFS1..0 = 11) und Vbg als Messwert sein 
(MUX3..0 = 1100). Hatte da irgendwie einen Denkfehler^^

Autor: Michael (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
>Denkansatz: Der Kondensator ist auch nicht unendlich groß...

Wäre auch schlecht. Ein unendlich großer Kondensator wäre ja quasi ein 
Kurzschluss.

However, wie man schon schrieb. Eine Referenz aufbauen (z.B. mit 
Z-Diode), Vcc messen und entsprechend skalieren (z.B. mittels 
Spannungsteiler) und das Ganze auswerten. So spontan fiele mir dazu ein 
simpler Komperator ein, der Vcc entsprechend skaliert mit einer 
Zenerdiode vergleicht (vgl. Anhang).

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.