Hallo zusammen, ein großes "kleines Problem": Wird mein AVR nicht benutzt, geht er nach einer gewissen Zeit in den Sleep Mode und spart damit Strom. Leider ist aber diesmal sein Spannungsregler (step up wandler, Versorung aus einer Zelle) noch aktiv und verbraucht munter weiter Saft. Die Batterie ist winzig und soll nicht tiefentladen werden. Mit anderen Worten: ich suche nach einer Schaltung, mit der der AVR sich und seiner Peripherie komplett den Stecker ziehen kann, wenn er das will, die sich aber ansonsten zurück hält und zudem keinen Eingriff beim Einschalten er Versorgungsspannung benötigt. Ach ja: Platz hab ich praktisch gar keinen :-) Das hier habe ich gelesen (und hoffentlich richtig verstanden): http://www.mikrocontroller.net/articles/AVR-Transistortester#Automatische_Abschaltung Das hilft mir (noch) nicht ganz, weil zum Reaktivieren ein Taster gedrückt wird. Taster gibt es diesmal nicht, und damit auch nicht die Möglichkeit, Transistoren temporär zu überbrücken. Es gibt nur "Strom an" und den Plan, dass der Schaltkreis sich nach getaner Arbeit selbst abschießt und stromlos bleibt, so lange der Pegel der Stromversorgung ansteht. Der Reset geht dann so: Trennen der Stromversorgung und erneutes Anschließen. Dann arbeitet der AVR, bis er sich wieder nach getaner Arbeit wie beschrieben abschaltet usw. Hört sich vielleicht etwas crazy an, ist aber so :-) Kann mir wer mit einer Schaltskizze helfen oder das rettende Stichwort geben (da bin ich mir hier sogar ziemlich sicher...)? das Stichwort Selbsthaltung reicht nicht, davon habe ich schon gelesen. :-) Beste Grüße vom bedrich
Dann simuliere den fehlenden Taster durch einen Transistor und ein RC-Glied.
Georg G. schrieb: > Dann simuliere den fehlenden Taster durch einen Transistor und ein > RC-Glied. ... so dass beim Anschalten die simuierte "Taste" gedrückt ist, bis der µC die Selbsthaltung selbst halten kann? Hm ... gibt es da auch was weniger aufwändiges ...? Braucht es denn die Taste unbedingt?
Mehr Infos oder keine Hilfe!
Schaltplan ist das mindeste bzw. was eigentlich verbaut ist
(Spannungsregler, Akku...).
>Hm ... gibt es da auch was weniger aufwändiges ...?
Weniger aufwendig als einen Widerstand+Kondensator ?
Ja, die Elektrotechnik sein lassen.
MR. Ohm schrieb: > Mehr Infos oder keine Hilfe! > Schaltplan ist das mindeste bzw. was eigentlich verbaut ist > (Spannungsregler, Akku...). > >>Hm ... gibt es da auch was weniger aufwändiges ...? > > Weniger aufwendig als einen Widerstand+Kondensator ? > Ja, die Elektrotechnik sein lassen. Patsch ... so geht das hier manchmal :-) Also MR. Ohm, wenn's für tiefere Griffe in die Trickkiste hilft: anbei der Schaltplan der Stromversorgung, s. auch Datenblatt MCP1640. Der Schaltkreis wird aktiv, wenn der Reedkontakt geschlossen wird. Der MCP1640 regelt eine kleine NiMH Zelle (40mAh) auf ca. 3V hoch. Geht der µC in den Tiefschlaf, dann braucht der Step Up Regler noch immer tüchtig Strom und saugt irgendwann die Zelle leer. Der AVR überwacht die Batteriespannung V_IN per ADC. Wenn die NiMH Zelle unter Last die 0,9V unterschreitet oder längere Zeit Inaktivität herrscht, dann soll V_IN gekappt werden. Der Reedkontakt bleibt dabei geschlossen. Letzterer öffnet erst wieder, wenn das System angefaßt wird (und das wird halt manchmal vergessen). Der Rest vom Schaltplan ist a) für die Frage uninteressant und b) nix Besonderes. Meine Rückfrage war so gemeint: wieso mit 3 zusätzlichen Bauteilen (nicht 2, MR. Ohm) einen Taster simulieren? Es bleiben lassen hat mich da jetzt nicht wirklich weiter gebracht - ich hoffe momentan noch auf mehr. Meinetwegen gute Argumente, wieso ein Taster oder ein Ersatz für ihn für die gewünschte Funktion überhaupt erforderlich ist...
Mit dem Schaltplan und den zusätzlichen Infos ist dein Problem nun verständlich. Ich fürchte, der Aufwand wird doch 3 Bauteile sein. Spontane Lösung: EN des Wandlers nicht an Vin legen sondern über einen Widerstand an einen Output Pin des MC. Zusätzlich einen Widerstand von EN nach GND. Und einen Kondensator von EN nach Vin. Funktion: Im Ruhezustand ist der Wandler durch den Widerstand gegen GND ausgeschaltet. Vom MC kann auch keine Spannung kommen. Beim Einschalten via Reed Kontakt wird EN über den Kondensator HI und der Wandler springt an. Erste Aktion des MC ist, dass er den mit EN verbundenen Pin auf HI legt. Dadurch kommt es zur Selbsthaltung. Zum Ausschalten zieht der MC den Pin nach GND. Der Wandler stoppt. Der MC geht in den Brown-out Reset und der Widerstand EN-GND hält den Wandler im Aus.
Hallo Georg, danke für Deine zwei Tipps. An den EN vom MCP1640 habe ich gar nicht gedacht ... das wird morgen ausprobiert. Die ganze Schaltung enthält allerdings noch einen Teil, der nicht über den Regler gespeist wird. Der gewünschte "Suizid" klappt jetzt nach dem Prinzip der hier ohne Widerstände skizzierten Schaltung: Beitrag "Selbsthaltung µC Schaltung" Der eingezeichnete Taster zwischen Pullup und GND muss nur durch einen ausreichend großen Kondensator ersetzt werden (Deine Antwort mit dem RC-Glied verstehe ich so ;-), dann hat der µC ausreichend Zeit zum Booten und kann die Kontrolle übernehmen. ... Auf dem Steckbrett funktioniert's jetzt jedenfalls schon. Man muss ein Bisschen warten, bis der Kondensator sich wieder entladen hat, aber das ist hier kein Problem. Ernst gemeinte Frage an alle: geht's noch besser?
So, hier kommt das Ergebnis zu Georgs Vorschlag: > Spontane Lösung: > EN des Wandlers nicht an Vin legen sondern über einen Widerstand an > einen Output Pin des MC. Zusätzlich einen Widerstand von EN nach GND. > Und einen Kondensator von EN nach Vin. > > Funktion: > Im Ruhezustand ist der Wandler durch den Widerstand gegen GND > ausgeschaltet. Vom MC kann auch keine Spannung kommen. > > Beim Einschalten via Reed Kontakt wird EN über den Kondensator HI und > der Wandler springt an. Erste Aktion des MC ist, dass er den mit EN > verbundenen Pin auf HI legt. Dadurch kommt es zur Selbsthaltung. > > Zum Ausschalten zieht der MC den Pin nach GND. Der Wandler stoppt. Der > MC geht in den Brown-out Reset und der Widerstand EN-GND hält den > Wandler im Aus. --> Um MCP1640 und µC aufzuwecken, muss für ca. 100 ms > 90% von V_IN an EN liegen. Der Kondensator ist dementsprechend groß. Die Lösung funktioniert in der Tat. Ein tolerables Restproblem verbleibt: Der MCP1640 braucht immer noch ca. 250µA im Sleep Mode, d.h. nach ein Paar Tagen ist der Akku trotzdem leer. Im Leerlauf, also EN auf V_IN, keine Last, sind es dann schon stolze 20mA. Ich entscheide mich erst mal für die weiter oben genannte Schaltung mit einem pnp in der Versorgungsleitung, der von einem npn am µC gesteuert wird. Auf jeden Fall wäre ich auch gern einer von denen, die spontan solche Einfälle haben :-)
Andreas Schell schrieb: > Der > MCP1640 braucht immer noch ca. 250µA im Sleep Mode, d.h. nach ein Paar > Tagen ist der Akku trotzdem leer. Da sagt das Microchip Datenblatt aber was anderes: Quiescent Current – Shutdown IQSHDN typ 0.7, max 2.3μA VOUT = EN = GND; Includes N-Channel andP-Channel Switch Leakage Was du meinst, ist der Ruhestrom ohne Last mit EN = VIN
Georg G. schrieb: > Da sagt das Microchip Datenblatt aber was anderes: > > Quiescent Current – Shutdown IQSHDN > typ 0.7, max 2.3μA > > VOUT = EN = GND; > Includes N-Channel andP-Channel Switch Leakage > > Was du meinst, ist der Ruhestrom ohne Last mit EN = VIN ... das wäre schön. Bei mir ist U_in = 1,1V, U_out = 3,5V. I_in = ca. 100 mA wenn I_out = 30mA - das verstehe ich und der Wirkungsgrad ist auch i.O. Wenn ich die Last von V_out trenne, ist I_in = 20mA (das ist viel zu viel). Wenn ich EN = GND schalte, ist I_in = ca. 250 µA. U_out = 0 - logisch. Das Datenblatt sagt auch noch was von PFM Mode disabled bei Version B und D und gibt für den PWM einen höheren quiescent current an. Die Ströme ohne Last sind aber trotzdem zu hoch... ich werde wohl die Schaltung nochmal genau durchschauen müssen. Mit der genannten Transistorschaltung komm ich auf I = 0 - gefällt mir besser und ist universeller einsetzbar.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.