Hallo, ich "beschäftige" mich aktuell mit dem SleepModus bei Mikrocontrollern. Im Tutorial von mikrocontroller.net ist zu lesen, dass der Stromverbrauch im "Power Down Mode" nur durch die Leckströme bestimmt wird.(http://www.mikrocontroller.net/articles/Sleep_Mode#Power_Down_Mode). Ist es möglich, wenn sich der mC im Power Down Mode befindet, ihn von der Stromversorgung zu trennen - 5Tage liegen lassen - Stromversorgung wieder dran - Interrupt und alles funktioniert wie gewohnt? Macht ja eigentlich keinen Sinn, weil er von der Stromversorgung getrennt wurde. Aber dann verstehe ich das oben mit den "Leckströmen" nicht, weil diese sind doch eigentlich parasitärer Natur und sollten eigentlich gar nicht auftreten -> also auch nicht für die Arbeit des mC wichtig sein?! Gruß
Bruder Jakob schrieb: > Aber dann verstehe ich das oben mit den "Leckströmen" > nicht, weil diese sind doch eigentlich parasitärer Natur und sollten > eigentlich gar nicht auftreten -> also auch nicht für die Arbeit des mC > wichtig sein?! es gibt kaum einen perfekten Isolator, im PowerDown wird wohl diese Widerstand der Isolierung die Ströme verursachen.
Bruder Jakob schrieb: > Also funktioniert das Prinzip ihn von der Stromversorgung zu trennen? ja (aber nur kurz). Wenn es länger dauert sorgt der Strom dafür die die Spannung verschwindend und damit der RAM gelöscht wird.
Peter II schrieb: > Bruder Jakob schrieb: >> Aber dann verstehe ich das oben mit den "Leckströmen" >> nicht, weil diese sind doch eigentlich parasitärer Natur und sollten >> eigentlich gar nicht auftreten -> also auch nicht für die Arbeit des mC >> wichtig sein?! > > es gibt kaum einen perfekten Isolator, im PowerDown wird wohl diese > Widerstand der Isolierung die Ströme verursachen. Bruder Jakob schrieb: > Also funktioniert das Prinzip ihn von der Stromversorgung zu > trennen? Im Prinzip ja, WENN die Pufferkondensatoren die Betriebsspannung lang genug stützen können. Die üblichen Abblock-Kondensatoren (einige 100nF typischerweise) schaffen das aber auch bei kleinen Leckströmen über die gewünschte Dauer nicht. Und im normalen Betrieb müssen sie das auch nicht. Ok, nehmen wir eben größere Kondensatoren, beispielsweise Elkos mit vielen 100µF Stützkapazität. Auch hier wird es bei realen Leckströmen des Controllers schon schwierig. Und noch schwieriger ist, dass auch die Kondensatoren selbst Leckströme haben, die typischerweise sogar größer als die des Controllers sein können. Praktisch wird das Vorhaben also leider nicht für längere Zeiten funktionieren. Grüße Christian
@ Bruder Jakob (Gast) >Ist es möglich, wenn sich der mC im Power Down Mode befindet, ihn von >der Stromversorgung zu trennen - 5Tage liegen lassen - Stromversorgung >wieder dran - Interrupt und alles funktioniert wie gewohnt? Nur dann, wenn über ausreichend große Pufferkondensatoren (Goldcaps, Supercaps) oder eine Lithiumzelle die Spannungsversorgung zur Verfügung gestellt wird. >Macht ja eigentlich keinen Sinn, weil er von der Stromversorgung >getrennt wurde. Eben. > Aber dann verstehe ich das oben mit den "Leckströmen" >nicht, weil diese sind doch eigentlich parasitärer Natur Sind sie auch. > und sollten eigentlich gar nicht auftreten Warum sollten sie nicht auftreten? Denkst du, die Isolation im so einem uC ist PERFEKT? Sie ist verdammt gut, aber eben nicht perfekt. So ein uC hat heute Leckströme von weniger als 1uA!!! > also auch nicht für die Arbeit des mC >wichtig sein?! Doch, und zwar wenn er schläft, sonst fällt das gar nicht auf. Gruß
Damit die Teile möglichst schnell/energiearm arbeiten können, werden die internen Kapazitäten so gering wie möglich gehalten. Stell Dir einfach mal vor, was passieren würde, wenn z.B. Ausgänge (damit sie lange den Pegel halten können) sehr große Kapazitäten hätten. Deine Leistungsbilanz wäre noch tiefer als im Keller.
wow, cool, danke für die kompetente Hilfe! Ist es denn irgendwie anders möglich Programme auf einem mC zu speichern ohne stromversorgung? Theo ich habe Programm A. Programm A wird ausgeführt bis zum Ende. Dann kappe ich die Stromversorgung, warte ein paar Tage. Dann schließe ich den mC wieder an die Stromversorgung an und Programm A wird (automatisch) wieder ausgeführt?! Beste Grüße und einen schönen Abend :-)
Das Programm selber ist normalerweise "Resetfest" im mC gespeichert. Das braucht auch selbst keine Energie. Üblicherweise verwendet man hierfür einen Flash-Speicher. Der größte Teil des aktuellen Status ist aber in flüchtigen internen Speichern fixiert. Das können einfache Zwischenwerte sein, Zeiger auf gerade aktuelle Speicherbereiche, interessant ist auch der Programmzähler, der auf den gerade aktuellen Befehl im Programm zeigt. Und so kommen jede Menge Sachen zusammen, die "man" sich einfach merken muss. Natürlich muss ein mC irgendwo mit der Arbeit anfangen. Meist nach dem Einschalten der Betriebsspannung. Dies ist aber eine durch die Programmierung festgelegte Sequenz, die (im Normalfall) immer gleich ist.
Bruder Jakob schrieb: > Ist es denn irgendwie anders möglich Programme auf einem mC zu speichern > ohne stromversorgung? Bei manchen schon. Nämlich bei denen, die einen eingebauten nichtflüchtigen Speicher haben, also ROM (oder, heute wohl häufiger: Flash-ROM) Diese Speicherarten behalten ihre Information auch ohne dauerhaftes Anliegen einer Spannung. Und bei den µC, die sowas nicht eingebaut haben, kann man es extern antüdern.
Bruder Jakob schrieb: > Dann schließe ich den mC wieder an die Stromversorgung an und Programm A > wird (automatisch) wieder ausgeführt?! Ja, aber das Programm arbeitet nicht weiter von der Stelle, wo es beim Abschalten gerade war. Es startet neu von der Reset-Adresse: das Einschalten der Stromversorgung erzeugt einen Hardware-Reset (wenn diese Funktion nicht im µC vorhanden ist, muss man sie extern dazu bauen).
Bruder Jakob schrieb: > Ist es denn irgendwie anders möglich Programme auf einem mC zu speichern > ohne stromversorgung? > Theo ich habe Programm A. Programm A wird ausgeführt bis zum Ende. Dann > kappe ich die Stromversorgung, warte ein paar Tage. > Dann schließe ich den mC wieder an die Stromversorgung an und Programm A > wird (automatisch) wieder ausgeführt?! Wenn Programm A entsprechend geschrieben wurde geht das. Mit entsprechender Beschaltung und Programm kann man sich z.B. merken wo der µC war als die Spannung weg ging und wenn sie wieder kommt kann man an dieser Stelle weiter machen. Unter anderem das EEProm im µC kann hierbei helfen. Hast du denn ein konkretes Problem wobei du diese Funktionalität benötigst?
Dietrich L. schrieb: > Ja, aber das Programm arbeitet nicht weiter von der Stelle, wo es beim > Abschalten gerade war. > Es startet neu von der Reset-Adresse: das Einschalten der > Stromversorgung erzeugt einen Hardware-Reset (wenn diese Funktion nicht > im µC vorhanden ist, muss man sie extern dazu bauen). So ist es. Aber natürlich kann man (wiederum bei Vorhandensein eines geeigneten Speichers, in diesem Fall z.B. EEPROM) einem Programm beibringen, sich im Falle eines PowerDown noch schnell zu merken, wo es gerade war und dann nach dem Reset (und ggf. geeigneter Neuinitialisierung der benutzten Hardware) an "genau" dieser Stelle weiter zu arbeiten. Es ist natürlich nicht wirklich genau diese Stelle, sondern es erscheint nur dem Laien im Makroabstand so... Insgesamt entspricht das dann dem Trick des "Ruhezustands" bzw. "Hybernate" bei PCs. Allerdings sind diese Dinger schon viel zu komplex, als dass es wirklich völlig unbemerkt für den Laienbetrachter ablaufen könnte. Bei µC ohne OS und den entsprechenden Anwendungen geht das hingegen wirklich so zu machen, dass es praktisch nicht zu bemerken ist.
Bruder Jakob schrieb: > Ist es möglich, wenn sich der mC im Power Down Mode befindet, ihn von > der Stromversorgung zu trennen - 5Tage liegen lassen - Stromversorgung > wieder dran - Interrupt und alles funktioniert wie gewohnt? Bei vielen µCs kommt man aus "Power Down" nur mit Reset raus, dafür zeiht das echt wenig Strom (z.B: EFM32 20nA typisch). Bruder Jakob schrieb: > Ist es möglich, wenn sich der mC im Power Down Mode befindet, ihn von > der Stromversorgung zu trennen - 5Tage liegen lassen - Stromversorgung > wieder dran - Interrupt und alles funktioniert wie gewohnt? Dazu braucht es den RAM Inhalt, und nun reden wir von Stömen um ein paar einzelnen µA. Eine CR2032 hält da Jahre, aber rechne das mal mit einen 100nF Kondensator. Ein 1F Goldcap könnte aber eine Woche halten. Länger würde ich der Selbstentladung nicht trauen.
Jim M. schrieb: > Bruder Jakob schrieb: >> Ist es möglich, wenn sich der mC im Power Down Mode befindet, ihn von >> der Stromversorgung zu trennen - 5Tage liegen lassen - Stromversorgung >> wieder dran - Interrupt und alles funktioniert wie gewohnt? > > Bei vielen µCs kommt man aus "Power Down" nur mit Reset raus, > dafür zeiht das echt wenig Strom (z.B: EFM32 20nA typisch). Der Unterschied zwischen "Sleep" und "Aus" besteht darin, daß beim Sleep der Zustand des Programms (also u.A. die Inhalte aller Variablen) erhalten bleibt. Wenn man da nur mit einem Reset heraus käme, wäre ein solcher Sleepmode vollkommen sinnlos. Was du meinst, ist wahrscheinlich gar kein Reset im eigentlichen Sinn, sondern nur die Verwendung des selben Pins. Wobei all das mit der Frage des TE auch eher nichts zu tun hat. > Bruder Jakob schrieb: >> Ist es möglich, wenn sich der mC im Power Down Mode befindet, ihn von >> der Stromversorgung zu trennen - 5Tage liegen lassen - Stromversorgung >> wieder dran - Interrupt und alles funktioniert wie gewohnt? > > Dazu braucht es den RAM Inhalt, und nun reden wir von Stömen um ein paar > einzelnen µA. Eine CR2032 hält da Jahre, aber rechne das mal mit einen > 100nF Kondensator. > > Ein 1F Goldcap könnte aber eine Woche halten. Länger würde ich der > Selbstentladung nicht trauen. Ich weiß nicht, was ihr alle immer mit Stützkondensatoren oder gar Batterien wollt. Der TE wollte dem µC den Saft abklemmen. Nicht der Baugruppe oder Platine, auf der der µC sitzt. Und das geht selbstverständlich nicht. Auch wenn da "nur Leckströme" fließen, dann heißt das nicht daß die Betriebsspannung nicht benötigt würde. Zum Erhalt des RAM-Inhalts (Variablen, s.o.) wird die Spannung natürlich benötigt. Diese Einschränkung fällt erst dann, wenn man einen µC hat, der statt herkömmlichem RAM einen nichtflüchtigen Arbeits- speicher verwendet, z.B. MRAM. Aber auch das kann nur eine Anmerkung am Rande sein (quasi zur Abrundung des Themas). Die eigentliche Frage des TE zielte ja darauf, daß er die Spannungsversorgung des µC prinzipiell als entbehrlich ansah, weil da "nur Leckströme" fließen. Nur folgt das eine halt so gar nicht aus dem anderen. Die Betriebsspannung braucht es nicht, damit da lustig Leckströme fließen können. Die Betriebsspannung brauchts, damit RAM und Register ihren Inhalt behalten.
Jim M. schrieb: > Bei vielen µCs kommt man aus "Power Down" nur mit Reset raus, > dafür zeiht das echt wenig Strom (z.B: EFM32 20nA typisch). Dann musst du aber nochmal Datenblätter lesen. Käme man aus dem Power Down nur mit einem Reset raus wäre dieser Sleep Mode schlicht Quatsch. Richtig ist lediglich, dass man den Mikrocontroller nur mit vergleichsweise wenigen Funktionen aus dem Power Down aufwecken kann.
Axel S. schrieb: > Ich weiß nicht, was ihr alle immer mit Stützkondensatoren oder gar > Batterien wollt. Der TE wollte dem µC den Saft abklemmen. Nicht der > Baugruppe oder Platine, auf der der µC sitzt. > > Und das geht selbstverständlich nicht. Auch wenn da "nur Leckströme" > fließen, dann heißt das nicht daß die Betriebsspannung nicht benötigt > würde. Zum Erhalt des RAM-Inhalts (Variablen, s.o.) wird die Spannung > natürlich benötigt. Diese Einschränkung fällt erst dann, wenn man einen > µC hat, der statt herkömmlichem RAM einen nichtflüchtigen Arbeits- > speicher verwendet, z.B. MRAM. doch. Auch der µC selber hat eine Kapazität und stellt damit einen (sehr kleinen) Kondensator dar. Damit bleibt die Spannung auch eine (kurze) Zeit erhalten wenn man sie von der Versorgung trennt. Man hat sogar schon geschafft, PC-Ram Module auszubauen und dann in einem andere PC auszulesen. (Sie wurden dafür gekühlt, damit die Leckströme so gering wie möglich sind).
Peter II schrieb: >> Und das geht selbstverständlich nicht. Auch wenn da "nur Leckströme" >> fließen, dann heißt das nicht daß die Betriebsspannung nicht benötigt >> würde. Zum Erhalt des RAM-Inhalts (Variablen, s.o.) wird die Spannung >> natürlich benötigt. Diese Einschränkung fällt erst dann, wenn man einen >> µC hat, der statt herkömmlichem RAM einen nichtflüchtigen Arbeits- >> speicher verwendet, z.B. MRAM. > > doch. Auch der µC selber hat eine Kapazität und stellt damit einen (sehr > kleinen) Kondensator dar. Damit bleibt die Spannung auch eine (kurze) > Zeit erhalten wenn man sie von der Versorgung trennt. So ein Quatsch. Das ist eine Spitzfindigkeit, die mit der Frage des TE genau gar nichts zu tun hat. Denn ein Stützkondensator (vollkommen egal wie groß oder wie klein) verhindert ja gerade das, wonach der TE fragte: die Betriebsspannung des µC abzuschalten.
Axel S. schrieb: > So ein Quatsch. Das ist eine Spitzfindigkeit, die mit der Frage des TE > genau gar nichts zu tun hat. hä? Das war doch die Frage. Bei einem einfachen Mosfet kannst du auch das Gate trennen und der Schaltzustand bleibt kurzeitig erhalten. Ein µC ist auch nur eine Sammlung von Fets. > Denn ein Stützkondensator wo steht etwas von einen Stützkondensator?
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.