Die Schaltung soll ein Einschalter für eine kleine µC-Schaltung mit einem ATMEGA328P werden. Der Taster soll zwei Funktionen haben: 1. Einschalten der Versorgungsspannung für den µC Wenn der µC PwrPort auf Low gezogen hat, hält er "sich selbst am Leben" und kann sich auch selbst wieder abschalten. 2. Wenn der Taster bei eingeschalteter Vcc gedrückt wird, soll der µC das über den TestSwPort mitbekommen. Die eigentliche Einschaltmiemik (alles außer R5/C1) habe ich simuliert - das scheint zu funktionieren, zumindest theoretisch. Die Spannung an allen Pins des 328P außer Reset darf maximal 0,5 V größer als Vcc sein - das könnte ein Problem an beiden Ports werden, denn im Moment des Einschaltens ist Vcc noch 0. R5/C1 soll den Anstieg der Spannung am TestSwPort des µC verzögern und so die 0,5 V - Bedingung einhalten. (Ob die Zeitkonstante ausreicht, habe ich noch nicht nachgerechnet.) Für den PwrPort ist mir noch nichts eingefallen, wie ich die 0,5 V - Bedingung einhalten kann - der liegt im abgeschalteten Zustand permanent auf Versorgungsspannung. Wie bekommt man das in den Griff?
:
Bearbeitet durch User
Guten Morgen, Uhu U. schrieb: > R5/C1 soll den Anstieg der Spannung am TestSwPort des µC verzögern und > so die 0,5 V - Bedingung einhalten. (Ob die Zeitkonstante ausreicht, > habe ich noch nicht nachgerechnet.) > Ich würde mir da, um ehrlich zu sein, nicht so große Sorgen machen. Die Pins haben sicherlich interne Dioden zu Vcc. Über den Widerstand R5 begrenzt du den Strom, der in den MCU hineinfließt. Die (interne) Diode begrenzt wiederum die Spannung. Wenn du "auf Nummer Sicher" gehen möchtest, dann schalte doch noch eine externe Diode davor (z.B. BAT64-04). > Für den PwrPort ist mir noch nichts eingefallen, wie ich die 0,5 V - > Bedingung einhalten kann - der liegt im abgeschalteten Zustand permanent > auf Versorgungsspannung. > Hier gilt das gleiche wie oben. Vielmehr stören würde mich ggf. der permanente "Leckstrom" (besonders bei Batterieanwendung). > Wie bekommt man das in den Griff? Habe leider gerade keine Zeit dir das aufzuzeichnen. Du könntest über ein "Wired-Or" (z.B. BAT64-05) sowohl mit deinem Taster, als auch mit deinem "PwrPort" auf die Basis von Q1 gehen. Dann wäre die "keep-alive" umgekehrt, der MCU müsste ein HIGH-Signal ausgeben, damit die Schaltung an bleibt. Im Übrigen: Ein Pin ist ein einzelner "Anschluss" eines MCUs, ein Port ist eine Gruppe von Pins (z.B. "die acht Pins PA0 bis PA7 sind PORTA"). Viele Grüße, Alex
Warum willst Du den uC abschalten, anstatt das sleep zu verwenden? So könntest Du ihn immer unter Spannung halten, den Schalter an einem Pin mit LevelInt anschliessen, und den Schalttransistor die Pheripherie abschalten. Wäre das nicht einfacher?
Uhu U. schrieb: > Für den PwrPort ist mir noch nichts eingefallen, wie ich die 0,5 V - > Bedingung einhalten kann - der liegt im abgeschalteten Zustand permanent > auf Versorgungsspannung. Das Problem hier ist nicht diese "0,5V-Bedingung", sondern eher, dass bei ausgeschaltetem uC, also im spannungsfreien Zustand dieser Pin eben diese 0,5V haben wird (hierzu einfach mal die Innenbeschaltung eines solchen Portpins mitsamt den Schutzdioden ansehen und in die Schaltung einzeichnen) und damit den Mosfet einschaltet, denn > Wenn der µC PwrPort auf Low gezogen hat, hält er "sich selbst am > Leben" und kann sich auch selbst wieder abschalten. Du solltest für die Selbsthaltung eher am anderen TestSWPort Pin ein "high" ausgeben, denn das kann ein ausgeschalteter und spannungsloser uC sicher nicht mehr...
Uhu U. schrieb: > Wenn der µC PwrPort auf Low gezogen hat, hält er "sich selbst am > Leben" und kann sich auch selbst wieder abschalten. Das kann er eben nicht, da jeder Pin ohne VCC auf low geht. Nimm Power-Down und häng die Taste an nen Pin-Change-Interrupt.
Peter D. schrieb: > Nimm Power-Down und häng die Taste an nen Pin-Change-Interrupt. In der Tat, nach einem Blick ins Datenblatt sieht das mit < 0,6 uA Verbrauch im Power-Down bei 3,3 V und < 85 °C T_Amb doch recht sparsam aus...
Peter D. schrieb: > Nimm Power-Down und häng die Taste an nen Pin-Change-Interrupt. Geht das mit Pin-Change? Ich dachte, das funktioniert nur mit den INT-Eingängen, und dann auch nur, wenn man sie auf Level-getriggert einstellt.
Dein Taster (einseitig an GND; andere Seite mit 2 Schottky-Dioden Kathoden nach GND) zieht das Gate des FET auf GND (über eine der genannten Dioden). Parallel Gate nach GND ein NPN (der hält deine Schaltung eingeschaltet). Die andere Diode (mit Pullup) geht an deinen uC. Sorry aber der Schaltplan ist momentan nicht erreichbar ;o)
Matthias L. schrieb: > Wäre das nicht einfacher? Doch, das ist wohl einfacher und ohne den bipolaren Transistor unter Spannung ist der Leckstrom wohl auch nochmal deutlich kleiner. Peter D. schrieb: > Das kann er eben nicht, da jeder Pin ohne VCC auf low geht. Er müsste max. 30 µA schlucken, um den Pin auf Low zu bekommen. Ob er das kann, muss wohl Spekulation bleiben, da der Pin mit einer angelegten Spannung von 3,3 V und Vcc = 0 sowieso weit außerhalb der Spezifikation betrieben würde. Was verbirgt sich hinter dem rot markierten Symbol im Schaltbild im Anhang?
Crazy H. schrieb: > Dein Taster (einseitig an GND; andere Seite mit 2 Schottky-Dioden > Kathoden nach GND) zieht das Gate des FET auf GND (über eine der > genannten Dioden). Da ist wohl ein Tippfehler drin...
Uhu U. schrieb: > Was verbirgt sich hinter dem rot markierten Symbol im Schaltbild im > Anhang? Kenne ich als Schaltzeichen für einen Analogschalter - da es hier nur um digitale Signale geht, wird das ein Schalter für den Digital Input sein. Im Falle des 'Sleep' Signals wird das PIN Signal also abgetrennt und durch den MOSFet auf Masse gezogen.
:
Bearbeitet durch User
Auszug aus dem Datenblatt des ATMEGA 328P: Kapitel 9.10.6 "Port Pins":
1 | When entering a sleep mode, all port pins should be configured to use minimum power. The most important is then to ensure that no pins drive resistive loads. In sleep modes where both the I/O clock (clkI/O) and the ADC clock (clkADC) are stopped, the input buffers of the device will |
2 | be disabled. This ensures that no power is consumed by the input logic when not needed. In some cases, the input logic is needed for detecting wake-up conditions, and it will then be enabled. Refer to the section ”Digital Input Enable and Sleep Modes” on page 79 for details on |
3 | which pins are enabled. If the input buffer is enabled and the input signal is left floating or have an analog signal level close to VCC/2, the input buffer will use excessive power. |
Kapitel 13.2.5 "Digital Input Enable and Sleep Modes":
1 | As shown in Figure 13-2, the digital input signal can be clamped to ground at the input of the Schmitt Trigger. The signal denoted SLEEP in the figure, is set by the MCU Sleep Controller in Power-down mode, Power-save mode, and Standby mode to avoid high power consumption if some input signals are left floating, or have an analog signal level close to VCC/2. |
2 | SLEEP is overridden for port pins enabled as external interrupt pins. If the external interrupt request is not enabled, SLEEP is active also for these pins. SLEEP is also overridden by various other alternate functions as described in ”Alternate Port Functions” on page 80. If a logic high level (“one”) is present on an asynchronous external interrupt pin configured as “Interrupt on Rising Edge, Falling Edge, or Any Logic Change on Pin” while the external interrupt is not enabled, the corresponding External Interrupt Flag will be set when resuming from the above mentioned Sleep mode, as the clamping in these sleep mode produces the requested |
3 | logic change. |
Uhu U. schrieb: > Peter D. schrieb: >> Das kann er eben nicht, da jeder Pin ohne VCC auf low geht. > Er müsste max. 30 µA schlucken, um den Pin auf Low zu bekommen. Ob er > das kann, muss wohl Spekulation bleiben Du kannst ganz problemlos über die nicht im angehängten Schaltplan zu sehende Schutzdiode nach Vcc den kompletten Controller mit Spannung versorgen: Beitrag "Re: Bosch E-Bike Antrieb Geschwindigkeitssensor" > Was verbirgt sich hinter dem rot markierten Symbol im Schaltbild im > Anhang? Das ist ein Analogschalter.
Dirk M. schrieb: > habe es mal so gelöst. Läuft seit Jahren zuverlässig... Interessant. Weißt du, was die Schaltung für einen Leckstrom hat?
Lothar M. schrieb: > Du kannst ganz problemlos über die nicht im angehängten Schaltplan zu > sehende Schutzdiode nach Vcc den kompletten Controller mit Spannung > versorgen: Das erklärt die Vcc + 0,5 V... Dass die Diode im Schaltbild des Pins fehlt, ist natürlich weniger schön.
Uhu U. schrieb: > Crazy H. schrieb: > Dein Taster (einseitig an GND; andere Seite mit 2 Schottky-Dioden > Kathoden nach GND) zieht das Gate des FET auf GND (über eine der > genannten Dioden). > > Da ist wohl ein Tippfehler drin... nö eigentlich nicht. hätte besser "Kathoden Richtung Taster" schreiben sollen. ..... aber so wie Dirks Schaltplan es zeigt.
:
Bearbeitet durch User
Von diesen Selbsthalteschaltungen scheint eine ganz besondere Faszination auszugehen... Aber wozu man diesen Aufwand bei µCs, die über einen "Power Down"-Mode verfügen, treiben will, erschließt sich mir nicht. Weil solche µCs eine Schaltung mit eben jener Funktionalität ja schon eingebaut haben.
LostInMusic schrieb: > Von diesen Selbsthalteschaltungen scheint eine ganz besondere > Faszination auszugehen... Aber wozu man diesen Aufwand bei µCs, die über > einen "Power Down"-Mode verfügen, treiben will, erschließt sich mir > nicht. Weil solche µCs eine Schaltung mit eben jener Funktionalität ja > schon eingebaut haben. Da hast du zugegebenermaßen Recht. Bevor ich, im Zuge dieses Threads, mal die Ruhestromaufnahme eines ATMEGA328P betrachtet habe, habe ich das auch nie als Möglichkeit erwogen. Auch in fertigen Steuergeräten ist mir eine solche Lösung noch nicht begegnet. Ich muss mir mal ein paar Gedanken dazu machen, welche Vor- und Nachteile man sich damit einhandelt...
LostInMusic schrieb: > Von diesen Selbsthalteschaltungen scheint eine ganz besondere > Faszination auszugehen... Aber wozu man diesen Aufwand bei µCs, die über > einen "Power Down"-Mode verfügen, treiben will, erschließt sich mir > nicht. Weil solche µCs eine Schaltung mit eben jener Funktionalität ja > schon eingebaut haben. Außer man schaltet damit zusätzlich stromhungrige Peripherie mit ein
LostInMusic schrieb: > Aber wozu man diesen Aufwand bei µCs, die über > einen "Power Down"-Mode verfügen, treiben will, erschließt sich mir > nicht. Es ist ja möglich, daß der Kontroller nicht allein auf der Welt ist -sprich: Es ist z.B. ein Display dran, was auch gleich mit abgeschaltet werden kann. Ein gutes Beispiel dafür ist z.B. der gut bekannte Transistortester. mfG Paul
Ich habe ein paar Geräte mit solchen Einschaltfunktionen. Die einen scheinen überhaupt keinen Strom im abgeschalteten Zustand zu brauchen, die anderen suckeln die Batterien innerhalb 6 Wochen leer. Über den Unterschied darf man sich schon mal Gedanken machen und wie Paul richtig feststellt, soll es ja µC-Schaltungen geben, die auch noch Peripherie haben. Selbst wenn jedes Teil davon einen guten Power-off-Modus hat, addieren sich dann diese Ströme und nicht wenige sind weit vom guten Power-off-Modus. Es kann sich also durchaus lohnen, einen "Generalausschalter" einzubauen...
Uhu U. schrieb: > soll es ja µC-Schaltungen geben, die auch noch > Peripherie haben. Klar, aber die kann der µC ja auch selber abschalten, bevor er in Sleep geht. Wo so eine Selbsthaltung aber durchaus sinnvoll ist, ist wenn auch noch ein Spannungsregler vor dem µC sitzt (z.B. Step-Up aus einer Batteriezelle). Der würde sonst ja dauernd Strom verbrauchen.
Uhu U. schrieb: > Dirk M. schrieb: >> habe es mal so gelöst. Läuft seit Jahren zuverlässig... > > Interessant. Weißt du, was die Schaltung für einen Leckstrom hat? Konnte in der uA Range von meinem Multimeter nichts messen.. Läuft schon gut 5 Jahre an einer CR2032.. Es wird bei Tastendruck kurz ein pollin funkmodul aktiviert und gesendet.
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.