Forum: Mikrocontroller und Digitale Elektronik Selbsthalteschaltung


von Hans F. (dani1632)


Angehängte Dateien:

Lesenswert?

Hallo!

ich will meinen µC mit einer 1,5V batterie und einen Step up Konverter 
(http://datasheets.maximintegrated.com/en/ds/MAX1722-MAX1724.pdf) mit 5V 
versorgen. Dieser Step Up Konverter verfügt über einen SHDN Pin, siehe 
Datenblatt.

Im Anhang befindet sich eine Schaltung, die folgendermaßen funktionieren 
soll: wenn der Taster 2 Sek gedrückt wird, soll die Versorgung erhalten 
bleiben. Wenn am SHDN Pin eine Spannung von ca 1V anliegt 
(Spannungsteiler nach dem Taster), dann fährt der Step Up hoch und 5V 
liegen am Ausgang an, der µC ist versorgt. In der Initialisierungsphase 
des µC will ich nun einen Timer starten, der nach 2Sek einen Ausgangspin 
auf high setzt, sodass mit einem anderen Spannungsteiler wieder 1V am 
unteren Widerstand abfällt. Dann kann der Taster ausgelassen werden und 
der µC bleibt mit 5V versorgt. Wenn der µC Pin dann wieder auf Low 
gesetzt wird ist die Versorgung wieder weg. Ist der Ansatz OK bzw. 
welche Probleme könnten dabei auftreten?

Was passiert, wenn nach 2Sek der µC Pin auf high geschalten wird und der 
taster aber gleichzeitig noch gedrückt ist (was immer der fall sein 
wird)? Dann wollen 2 Spannungsquellen eine Spannung am unteren 
Widerstand einstellen, könnte das zu einem Problem führen? Wäre in 
diesem Fall eine Zenerdiode eher geeignet oder?

Und noch eine Frage: Welche Spannung liegt am Ausgang des StepUp, wenn 
er im SHDWN-Modus ist (also wenn low am SHDN-Pin anliegt)?

Dankesehr, lG

von Seb (Gast)


Lesenswert?

Daniel F. schrieb:
> Und noch eine Frage: Welche Spannung liegt am Ausgang des StepUp, wenn
> er im SHDWN-Modus ist (also wenn low am SHDN-Pin anliegt)?
Wie schon im anderen Thread gesagt, ein Blick ins Datenblatt wird dir 
die Erleuchtung geben...

> Dankesehr, lG

Du hast nur eine Spannungsquelle und das ist die Batterie, der Step-Up 
Konverter macht aus deinen 1,5V 5V.
Und solange keine Ströme zwischen beiden fließen ist das in Ordnung, 
aber mh, ist nicht so ganz sauber.... Weil du den Spannungsteiler genau 
Dimensionieren musst und Widerstände haben alle Toleranzen.
Problem bei deinem Taster könnte auf jeden Fall sein, das du ihn zu früh 
wieder los lässt und der Microkontroller noch nicht auf High geschaltet 
hat und dann direkt wieder ausgeht.

von Georg G. (df2au)


Lesenswert?

Daniel F. schrieb:
> Was passiert, wenn nach 2Sek der µC Pin auf high geschalten wird und der
> taster aber gleichzeitig noch gedrückt ist (was immer der fall sein
> wird)? Dann wollen 2 Spannungsquellen eine Spannung am unteren
> Widerstand einstellen, könnte das zu einem Problem führen?

Das ist sehr unwahrscheinlich.


> Wäre in
> diesem Fall eine Zenerdiode eher geeignet oder?

Die ist definitiv nicht notwendig.


> Und noch eine Frage: Welche Spannung liegt am Ausgang des StepUp, wenn
> er im SHDWN-Modus ist (also wenn low am SHDN-Pin anliegt)?

Gute Frage. Das Datenblatt schweigt dazu. Wenn man sich das 
Innenschaltbild ansieht, gibt es einen möglichen Pfad von BATT zu VOUT. 
Da aber als Verbrauch im Ruhezustand weniger als 1uA angegeben ist, kann 
das nicht viel werden.

von Georg G. (df2au)


Lesenswert?

Ein Nachtrag: Du musst auf jeden Fall den Brown-Out Reset deines 
Prozessors aktivieren. Sonst läufst du in Gefahr, dass im Moment des 
Abschaltens seltsame Dinge passieren.

von Seb (Gast)


Lesenswert?

Georg G. schrieb:
> Ein Nachtrag: Du musst auf jeden Fall den Brown-Out Reset deines
> Prozessors aktivieren. Sonst läufst du in Gefahr, dass im Moment des
> Abschaltens seltsame Dinge passieren.

Dann würde sich der Controller doch selber resetten sobald er versucht 
den Pin auf Low zu treiben, sprich der Pin wäre dann für ne kleine Zeit 
auf Z und dann wieder auf high...

mh, naja, aber wahrscheinlich ist der Step-Up Controller von der 
Reaktion her schneller als der Mikrocontroller....

von Hans F. (dani1632)


Lesenswert?

Dankesehr...
jap, im datenblatt habe ich geschaut, aber wie von Georg beschrieben 
findet man da nicht wirklich was passendes...

@Seb: Das mit dem früh Loslassen des Tasters ist egal, das soll auch so 
wein, dass unter einer Betätigung von 2Sek nichts passiert und das Ding 
aus bleibt...

Was genau ist der BrwonOutReset des Prozessors und wie aktivier ich den?

Hmmm, mir ist gerade noch was eingefallen: Das Ding muss sich auch 
wieder abschalten lassen, wenn man dann im eingeschalteten Zustand den 
Taster wieder 2 Sek betätigt... Dazu fällt mir jetz keine passende 
Lösung ein, habt ihr einen Vorschlag?

THX

von Seb (Gast)


Lesenswert?

Daniel F. schrieb:
> Dankesehr...
> jap, im datenblatt habe ich geschaut, aber wie von Georg beschrieben
> findet man da nicht wirklich was passendes...
>
> @Seb: Das mit dem früh Loslassen des Tasters ist egal, das soll auch so
> wein, dass unter einer Betätigung von 2Sek nichts passiert und das Ding
> aus bleibt...
>
> Was genau ist der BrwonOutReset des Prozessors und wie aktivier ich den?
>
> Hmmm, mir ist gerade noch was eingefallen: Das Ding muss sich auch
> wieder abschalten lassen, wenn man dann im eingeschalteten Zustand den
> Taster wieder 2 Sek betätigt... Dazu fällt mir jetz keine passende
> Lösung ein, habt ihr einen Vorschlag?
>
> THX

Ganz einfach, den Taster an ein I/O Pin hängen und abfragen.

BrownOut ist eigentlich dazu gedacht, falls Spannungseinbrüche in der 
Versorgungsspannung festgestellt werden den Mikrocontroller zu resetten. 
Aktiviert wird der über die Fuses

von Hans F. (dani1632)


Lesenswert?

OK, aber die 1,5V (bei längerem Batteriebetrieb noch geringer) werden 
nicht reichen, um als HIGH level erkannt zu werden (ATtiny84A mit 5V 
Versorgung). Ich könnte die Batteriepsannung an die Basis eines 
npn-Transistors legen, der dann die 5V Vcc an einen Eingangspin des µC 
durchschaltet. Wie gesagt, bin Anfänger, bitte um Bestätigung :)

THX

von Seb (Gast)


Lesenswert?

Daniel F. schrieb:
> OK, aber die 1,5V (bei längerem Batteriebetrieb noch geringer)
> werden
> nicht reichen, um als HIGH level erkannt zu werden (ATtiny84A mit 5V
> Versorgung). Ich könnte die Batteriepsannung an die Basis eines
> npn-Transistors legen, der dann die 5V Vcc an einen Eingangspin des µC
> durchschaltet. Wie gesagt, bin Anfänger, bitte um Bestätigung :)
>
> THX

Oh sorry, Fehler meinerseits....
hab vergessen das du ja eine 1,5V Spannungsquelle hast.

Ja, dann einen Transistor als Schalter müsste auch gehen... Man kann es 
auf verschiedene Arten schalten. Die Eingänge sind hochomig, sollte von 
daher kein Problem sein...

von Seb (Gast)


Lesenswert?

Seb schrieb:
> Daniel F. schrieb:
>> OK, aber die 1,5V (bei längerem Batteriebetrieb noch geringer)
>> werden
>> nicht reichen, um als HIGH level erkannt zu werden (ATtiny84A mit 5V
>> Versorgung). Ich könnte die Batteriepsannung an die Basis eines
>> npn-Transistors legen, der dann die 5V Vcc an einen Eingangspin des µC
>> durchschaltet. Wie gesagt, bin Anfänger, bitte um Bestätigung :)
>>
>> THX
>
> Oh sorry, Fehler meinerseits....
> hab vergessen das du ja eine 1,5V Spannungsquelle hast.
>
> Ja, dann einen Transistor als Schalter müsste auch gehen... Man kann es
> auf verschiedene Arten schalten. Die Eingänge sind hochomig, sollte von
> daher kein Problem sein...

Ungefähr so:
1
   1,5V                5 V
2
    |                   |
3
    |                   R (10k Pullup)
4
  Taster   +-< Out      |
5
    |      |            +--------------> Input Pin (internen Pullup aus!!!)
6
    R      +---->SHDN   |
7
    |      |            C
8
    +------+--R-------B + (Transistor NPN)
9
    |                   E     
10
    R                   |
11
    +------Masse--------+
Wenn jetzt der Taster gedrückt wird, geht der Pin auf Low!

von Seb (Gast)


Lesenswert?

EDIT:
Ungefähr so:
1
    1,5V                5 V 
2
     |                   | 
3
     |                   R (10k Pullup) 
4
   Taster   +-< Out      | 
5
     |      |            +--------------> Input Pin (internen Pullup aus!!!) 
6
     R      +---->SHDN   | 
7
     |      |            |
8
     |      ^ (Diode)    | 
9
     |      |            C 
10
     +------+--R-------B + (Transistor NPN) 
11
     |                   E 
12
     R                   | 
13
     +------Masse--------+
> Wenn jetzt der Taster gedrückt wird, geht der Pin auf Low!

Sorry da gehörte noch ne Diode hin, sonst erkennt der Mikrocontroller am 
ende sein eigenes Signal :)

von Hans F. (dani1632)


Angehängte Dateien:

Lesenswert?

Aber so funktioniert dann ja die Selbsterhaltung nicht mehr oder? ich 
habe meine schaltung erweitert und angehängt...

von Hans F. (dani1632)


Lesenswert?

aber hier ist dann das problem, dass der transistor auch durch die 
selsbterhaltung geschalten wird...

von Seb (Gast)


Lesenswert?

Daniel F. schrieb:
> aber hier ist dann das problem, dass der transistor auch durch die
> selsbterhaltung geschalten wird...

Deswegen habe ich ja in meinem 2. Post noch eine Diode dazu eingemalt, 
damit das eben nicht passiert.

von Hans F. (dani1632)


Lesenswert?

achsooo... ich stand jetz auf der leitung wegen dem OUT-Pin... dieser 
ist doch vom µC und nicht vom Step Up...

DANKE!!

von Seb (Gast)


Angehängte Dateien:

Lesenswert?

Hier , hab sie mal eben Schnell in deine Schaltung eingezeichnet.

von Seb (Gast)


Lesenswert?

Seb schrieb:
> Hier , hab sie mal eben Schnell in deine Schaltung eingezeichnet.

Gibt nur ein Problem stell ich grad fest... Was sieht der Step-Up als 
high an? Könnte eventuell zu wenig werden, wenn ich mal rechne
1V - 0,7V = 0,3V

von Hans F. (dani1632)


Lesenswert?

jap, das ist zu wenig... 0,91V guaranteed startup... hmmm...

von Hans F. (dani1632)


Lesenswert?

sorry... es geht natürlich um den SHDN eingang... im datenblatt steht 
ein bereich von 500-800mV... also zu viel für diese schaltung... gibts 
noch einen anderen lösungsvorschlag?

von Seb (Gast)


Lesenswert?

Daniel F. schrieb:
> jap, das ist zu wenig... 0,91V guaranteed startup... hmmm...

Was ist der Sinn deines Spannungsteilers, ich glaube das du R vom Taster 
wegnehmen könntest? brauchst lediglich eig den R nach der abzweigung.

von Seb (Gast)


Lesenswert?

Daniel F. schrieb:
> sorry... es geht natürlich um den SHDN eingang... im datenblatt
> steht
> ein bereich von 500-800mV... also zu viel für diese schaltung... gibts
> noch einen anderen lösungsvorschlag?

Wo liest du das , find das garnicht im Datenblatt.

von Seb (Gast)


Lesenswert?

ah, habs gefunden, eher zuwenig als zuviel. ab 0,4 V versteht er es als 
low....

von Seb (Gast)


Lesenswert?

Seb schrieb:
> ah, habs gefunden, eher zuwenig als zuviel. ab 0,4 V versteht er
> es als
> low....

Nimm den R beim Taster weg, dann passts, dann hast du 1,5 - 0,7 = 0,8 V

von Seb (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe hier versucht mal einen Schaltplan zu erstellen wie ich mir das 
vorstelle. Habe hier die Spule weggelassen... (also denk sie dir einfach 
dazu... gehört natürlich da noch hin...).

von Hans F. (dani1632)


Lesenswert?

Danke für den Vorschlag, klingt interessant...

2 Anmerkungen hätte ich dazu noch: Wenn der Taster offen ist, was ist 
dann das Potential am SHDN EIngang? Wird das durch den R2 über die Diode 
auf Low gezogen oder muss ich einfach beim initialisieren des µC den Pin 
PB0 als LOW-Ausgang definieren?

Dieselbe Frage gilt für PB1: Wenn der Taster gedrückt wird, wird der Pin 
auf Masse gezogen. Aber das Potential im Falle eines nicht gedrückten 
Tasters ist nicht definiert oder?

Vielen Dank!

von Georg G. (df2au)


Lesenswert?

Seb schrieb:
> Dann würde sich der Controller doch selber resetten sobald er versucht
> den Pin auf Low zu treiben, sprich der Pin wäre dann für ne kleine Zeit
> auf Z und dann wieder auf high...

Wenn durch die Abschaltung VCC unter die Brown Out Schwelle sinkt, geht 
der Prozessor in den Reset und macht den Pin hochohmig. Das ändert aber 
nichts an dem SHDN Pegel, denn der braucht HI zum Einschalten.

Ohne Brown Out Reset geht es wirklich nicht. Diese Erfahrung haben schon 
diverse Leute machen müssen.

von Hans F. (dani1632)


Lesenswert?

Hallo...

An der Diode fallen 0,7V ab... Am SHDN EIngang ist eine Spannung von 
(max) 0,8V notwendig, um als Highpegel erkannt zu werden. Wenn nun im 
Laufe der Batterielebenszeit die 1,5V sinken (z.B. auf 1,2V) dann komm 
ich mit dem Spannungsabfall an der Diode von 0,7V nicht mehr auf die 
0,8V. Eventuell kommt man sogar unter 0,5V, sodass definitiv kein High 
Pegel mehr erkannt wird. Gibt es auch Dioden mit geringeren 
Spannungsabfällen, die die gleiche Wirkung haben?

THX, lG

von Georg G. (df2au)


Lesenswert?

Daniel F. schrieb:
> Gibt es auch Dioden mit geringeren
> Spannungsabfällen, die die gleiche Wirkung haben?

Du suchst nach "Schottky Diode".

von Seb (Gast)


Lesenswert?

Georg G. schrieb:
> Seb schrieb:
>> Dann würde sich der Controller doch selber resetten sobald er versucht
>> den Pin auf Low zu treiben, sprich der Pin wäre dann für ne kleine Zeit
>> auf Z und dann wieder auf high...
>
> Wenn durch die Abschaltung VCC unter die Brown Out Schwelle sinkt, geht
> der Prozessor in den Reset und macht den Pin hochohmig. Das ändert aber
> nichts an dem SHDN Pegel, denn der braucht HI zum Einschalten.
>
> Ohne Brown Out Reset geht es wirklich nicht. Diese Erfahrung haben schon
> diverse Leute machen müssen.

Ja, die Frage ist nur, wer ist schneller, Controller oder 
Step-Up-Converter. Wenn der nämlich z.B. dann resettet, geht die 
Prozedur von vorne los, weil ja im Programm der Pin sofort nach dem 
reset auf High gezogen wird. Das heißt, es kann passieren, das der 
Ausschaltvorgang nicht sauber durchgeführt wird.

Daniel F. schrieb:
> Danke für den Vorschlag, klingt interessant...
>
> 2 Anmerkungen hätte ich dazu noch: Wenn der Taster offen ist, was ist
> dann das Potential am SHDN EIngang? Wird das durch den R2 über die Diode
> auf Low gezogen oder muss ich einfach beim initialisieren des µC den Pin
> PB0 als LOW-Ausgang definieren?
>
Nein, wird er nicht, Diode ist in Sperrrichtung geschaltet!
Ich hab vergessen, einen Widerstand einzuzeichnen, Zu R2 gehört ein 
weiterer Widerstand als Spannungsteiler. Gedanke war folgender. Maximal 
0,8V an SHDN, also ein Spannungsteiler um die Spannung einzustellen, aus 
dem Ausgang kommen ja schließlich 5V und wenn der Converter nur maximal 
0,8V ab kann (wenn ich das so verstehen kann als Maximalwert im 
Datenblatt), dann muss man die Spannung noch runter regeln, sonst würden 
nämlich 5 - 0,7 = 4,3V an SHDN liegen.
Und nein, du sollst den Ausgang gleich als High definieren, damit der 
Controller weiterhin eingeschaltet bleibt. SHDN steht ja für Shutdown, 
sprich sobald dieser Pin high wird, schaltet er aus! Und da der Eingang 
invertiert ist, brauchst du ein high, damit SHDN low ist.

> Dieselbe Frage gilt für PB1: Wenn der Taster gedrückt wird, wird der Pin
> auf Masse gezogen. Aber das Potential im Falle eines nicht gedrückten
> Tasters ist nicht definiert oder?
>
aktiviere den Internen Pullup von PB1, dann ist das Potential als high 
definiert.
> Vielen Dank!

von Georg G. (df2au)


Lesenswert?

Seb schrieb:
> Wenn der nämlich z.B. dann resettet, geht die
> Prozedur von vorne los, weil ja im Programm der Pin sofort nach dem
> reset auf High gezogen wird.

Im Falle des Brown Out Reset geht nix von vorn los, solange nicht die 
Spannung wieder ansteigt. Der Sinn des Brown Out Reset ist ja gerade, 
den Prozessor fest zu halten, so lange die Betriebsspannung nicht gut 
genug ist.

von Hans F. (dani1632)


Lesenswert?

Hallo,

@Seb: Ich habe das so verstanden: Wenn ich am SHDN High anlege, dann 
arbeitet der STep-Up-Konverter (also er gibt 5 V am Ausgang aus). Die 
800mV sind nur ein maximaler Grenzwert, ab dem HIGH erkannt wird. 
Insgesamt kann jedoch auch die Ausgangsspannung am SHDN-Eingang angelegt 
werden (siehe Seite 3 vom Datenblatt im ersten Beitrag: !SHDN=OUT).

Oder hab ich da was missinterpretiert?

LG

von Seb (Gast)


Lesenswert?

Daniel F. schrieb:
> Hallo,
>
> @Seb: Ich habe das so verstanden: Wenn ich am SHDN High anlege, dann
> arbeitet der STep-Up-Konverter (also er gibt 5 V am Ausgang aus).
>
> LG
Genau, du musst high anlegen, aber in deinem Vorhergegangen Post 
wolltest du den Ausgang als Low im Programm definieren.

von Seb (Gast)


Lesenswert?

Daniel F. schrieb:
> Hallo,
>
> @Seb: Die
> 800mV sind nur ein maximaler Grenzwert, ab dem HIGH erkannt wird.
> Insgesamt kann jedoch auch die Ausgangsspannung am SHDN-Eingang angelegt
> werden (siehe Seite 3 vom Datenblatt im ersten Beitrag: !SHDN=OUT).
>
> Oder hab ich da was missinterpretiert?
>
> LG

Dann versteh ich ehrlich gesagt die Werte im Datenblatt nicht
Spannung > 400 = High
Spannung > 500 = High
Spannung > 800 = High

Wozu gebe ich denn 3 Werte an, wenn schon ab 0,4 ein High erkannt wird 
und alles < 0,4 Low ist.

von Hans F. (dani1632)


Lesenswert?

Ich denke, dass eine Spannung unter 400mV definitiv als low, und eine 
Spannung oberhalb von 800mV definitiv als High erkannt wird. Diese 
definitive High-Erkenung kann je nach Bauteil (Toleranzen) zwischen 0,5V 
und 0,8V liegen...

von Seb (Gast)


Lesenswert?

Daniel F. schrieb:
> Ich denke, dass eine Spannung unter 400mV definitiv als low, und
> eine
> Spannung oberhalb von 800mV definitiv als High erkannt wird. Diese
> definitive High-Erkenung kann je nach Bauteil (Toleranzen) zwischen 0,5V
> und 0,8V liegen...

Ja, also wie gesagt, dann kannst du den Widerstand weglassen nach GND.
Da du ja gleich beim start des Mikrocontrollers den Ausgang auf High 
setzt (drive high for normal operation), ist das Potential ja sofort 
definiert.
1
Normal Operation:
2
Ausgang (High) -----> Invertierung (Low) ----> SHDN
3
Aber man hat den Pin auf High "getrieben"
4
5
Shutdown:
6
Ausgang (Low) ------> Invertierung (High) ----> SHDN
7
Aber man hat den Pin auf Low "getrieben"

Also das wäre jetzt mein Verständnis von den Ausführungen der Manual 
gewesen.
Die Diode vom Ausgang kann man entfernen.
Die andere Sollte bleiben, damit kein Strom vom Ausgang zur 
Spannungsquelle fliest, da hier ja nen Potentialunterschied (5V - 1,8V = 
3,2V) vorliegt und sonst Strom in die Batterie fliest (ob das so gesund 
ist für die Batterie?... einfach zur Sicherheit und damit der Ausgang 
nicht den Transistor durchschaltet.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.