Ich habe einen Mikrocontroller mit Batteriestrom. Momentan schalte ich die Stromversorgung über einen einfachen Ein- / Ausschalter um. Ich möchte die Stromversorgung mit einem Druckknopf umschalten, mit minimaler Änderung des Schaltplans (und wahrscheinlich des Mikrocontroller-Programms) und ohne Verbrauch, wenn das Gerät ausgeschaltet ist. Wie kann ich es tun?
HINZUGEFÜGT . Ich kenne folgenden Trick:
Hier setzt der Mikrocontroller beim Start PB3 auf High und hält so die Leistung für das Gerät. Dies ist jedoch keine Lösung für mein Problem, da ich das Gerät auch durch Drücken von S1 ausschalten muss .
HINZUGEFÜGT . Kann ich VT2 vom Stromkreis ausschließen (dh die Basis des Mikrocontroller-Laufwerks von VT1 direkt)?
Antworten:
Aufgrund der von Ihnen bereitgestellten Schaltung können Sie direkt nach dem Schalter (S1) (an den Schalter angeschlossene Kathode) eine Diode in Reihe schalten und über einen Eingang feststellen, ob der Schalter erneut gedrückt wurde PB3.
Die Zenerdiode schützt den PIC-Eingang vor der von der Stromversorgung kommenden Spannung.
quelle
Wie weit müssen Sie wirklich sein? Viele moderne Mikrocontroller haben einen Ruhestrom, der deutlich unter dem Selbstentladestrom selbst kleiner Batterien liegt. Sie können den Taster einfach den I / O-Pin des Mikros ansteuern lassen, der sich dann bei jedem Tastendruck zwischen Ruhezustand und aktivem Modus umschaltet. Etwas Entprellen wird nötig sein, aber das alles ist auch in der Firmware möglich.
Diese Art von Ein / Aus-Methode ist heutzutage ziemlich verbreitet. Wenn es nur einen µA braucht, muss ein Mikrocontroller nicht wirklich ausgeschaltet sein, sondern muss nur einschlafen, was er unter seiner eigenen Kontrolle tun kann. Die Tastenleitung muss mit etwas verbunden werden, das das Aufwachen des Mikros aus dem Schlaf bewirken kann, aber fast jedes Mikro hat mindestens eine davon, normalerweise mehrere.
quelle
BEARBEITEN - Nach dem Nachdenken ist die unten stehende Schaltung (die ich als Referenz belassen werde) wahrscheinlich am besten für die Verwendung in Schaltungen ohne Mikro geeignet. Wie in den anderen Antworten erwähnt, ist es nicht wirklich sinnvoll, das Mikro nicht zur Steuerung des Power-Toggles zu verwenden, da es weniger Komponenten verwendet und genau gesteuert werden kann, es sei denn, Sie können sich die wenigen uA wirklich nicht leisten.
Die einfachste Version kann so etwas wie ein IOC-Eingang (Interrupt on Change) mit Pull-up und Taste auf Masse sein. Das Mikro wird ständig mit Strom versorgt und steuert einen P-Kanal-MOSFET (mit Pullup von Gate zu Source) für den Rest der Schaltung. Wenn es schläft, lässt es das Tor schweben, um den Stromkreis auszuschalten.
Referenzschaltung:
Zunächst ist der P-MOSFET ausgeschaltet, sodass an Q2 kein Basisstrom anliegt, der ebenfalls ausgeschaltet ist. Q1 ist aus, also liegt Q1c bei 5V. Die Schaltung ist statisch.
Wenn S1 (ignorieren Sie die + und - Knoten, sie sind für SPICE-Triggerzwecke da) gedrückt wird, werden die 5 V an Q1c mit der Q2-Basis verbunden und eingeschaltet. Dies zieht das P-MOSFET-Gate auf Masse und schaltet es ebenfalls ein.
R4 sieht jetzt 5 V und wenn S1 freigegeben wird, liefert es Q2s Basis den Strom, der benötigt wird, um es offen zu halten (und daher auch den MOSFET an). Q1 wird auch eingeschaltet, wenn der Strom durch R2 C1 auf ~ 600 mV auflädt, zu welchem Zeitpunkt Q1c ist <200mV (dh Q1 ist eingeschaltet)
Der Stromkreis ist jetzt wieder statisch.
Wenn S1 erneut gedrückt wird, leitet Q1 den Strom von R4 ab (wodurch Q2 eingeschaltet bleibt), wodurch Q2 ausgeschaltet wird. R1 zieht den MOSFET-Sockel auf 5V und schaltet ihn wieder aus.
Hier ist die Simulation (V (push) high repräsentiert, wenn der Knopf gedrückt wird):
Außerdem können wir nach dem Ausschalten sehen, dass der Strom auf Null geht (wenn sich C1 entlädt und Q1 ausschaltet), sodass die Schaltung im ausgeschalteten Zustand keinen Strom verbraucht (der Cursor für I (V1) befindet sich bei 19,86 s und misst 329 nA):
Die ursprüngliche Schaltungsidee ist nicht meine, sie stammt von Dave Jones bei EEVblog .
quelle
Wie Bruno Ferreira vorschlug, besteht die einfachste Möglichkeit, die Taste als "Aus" -Schalter zu verwenden, darin, die Schaltung zu ändern, indem der Prozessor weiß, wann die Taste gedrückt wird. Ich denke, man kann ziemlich gut Widerstände verwenden, um den Eingang des Prozessors vor Spannungen über VDD zu schützen, ohne dafür einen Zener zu benötigen.
Hier ist eine grobe Skizze eines Schaltungsentwurfs, den Sie verwenden könnten. Die rechte Hälfte stellt das Verhalten des Prozessors dar, und ich habe eine Kombination aus Transistor, Zener und Widerstand verwendet, um für einen Regler einzutreten. Der Ausgang des Prozessors wird mit einem analogen Schalter (VDD) und nicht mit einem Gatter dargestellt, da Gatter in diesem Simulator immer einen + 5-V-Ausgang erzeugen.
Ein Hauptaspekt der Schaltung, der bei Nichtbeachtung zu Problemen führen kann, besteht darin, dass sie so ausgelegt ist, dass der Prozessor die Schaltung nur dann einschalten kann, wenn ihre VDD mindestens ~ 3,6 Volt beträgt. Ich habe den Simulator auch so manipuliert, dass der Prozessor immer versucht, seinen Ausgang einzuschalten, wenn sein VDD unter 3,5 Volt liegt. Ich habe viele Designs gesehen, die davon ausgehen, dass Prozessoren nicht versuchen, eine hohe Logik auszugeben, wenn ihre Leistung nachlässt. Diese Annahme mag bei einigen Chargen von Chips, die beim Testen verwendet wurden, in Ordnung sein, scheitert aber dann bei anderen Chargen von Chips, die in der Serienproduktion verwendet wurden. Das Verhalten der meisten Prozessoren ist unter Unterspannungsbedingungen nicht spezifiziert. Ein gutes Design sollte so konstruiert sein, dass das Verhalten eines Prozessors unter solchen Bedingungen keine Rolle spielt. t Die explizite Erzeugung von Spannungen, die höher sind als die angelegte Spannung, wird dies nicht auf magische Weise tun. Ich glaube nicht, dass es eine explizite Spezifikation dafür gibt, aber ich denke, dass es in den meisten Fällen sicher gefolgert werden kann.
quelle