Ich war mir nicht sicher, wie ich das überschreiben sollte, aber hier ist es:
Ich debugge einen meiner Knopfzellen-EIN / AUS-Schalter. Schaltung ist wie folgt:
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Grundsätzlich ein High-Side-Schalter für die Knopfzelle, die einen uC mit Strom versorgen würde.
Ich habe den im Schaltplan genannten MOSFET und auch FDY4000CZ getestet - beide haben das gleiche Problem:
Das Problem ist, dass ich auf "uC GPIO" eine verfrühte Logikebene sehe, die
1) Beim Anlegen von Strom wird Vcoin leicht angehängt.
2) Beim Abschalten der Stromversorgung macht der MOSFET einige "Sprünge". Oszilliert in häufigen Fällen ständig ein/aus - sehr gefährlich für die Knopfzelle, die erschöpft werden kann.
Hier entferne ich also nach einiger Laufzeit einfach die gesamte Stromversorgung (3,3 V und Vcoin). uC GPIO ist hoch. uC Vcc nimmt aufgrund der Kapazität langsam ab und uC befindet sich im Schlafmodus. An einem Punkt ~ 1,6 V schließt der MOSFET-Schalter und unterbricht die Stromversorgung - Alles ist gut.
Aber dann macht uC GPIO einen seltsamen Sprung - das sollte nicht passieren! Eine meiner guten Einheiten macht das nicht, gleiches Mosfet, gleiche Schaltung ...
Nichts anderes für diese Messung beigefügt.
( NB: uc GPIO geht beim Start NICHT hoch, also scheint es kein Problem mit der Start-FW zu sein. Also muss es ein Leck geben?)
Nahaufnahme der kleinen Gipfel:
Alle Kanäle wie vorher. CH1: gelb, uC GPIO CH2: magneta, Gate von M2 CH3: lila, uC Vcc CH4: blau, ist jetzt Strom von Vcoin.
Ich habe keine Ideen mehr, warum das passiert oder wie ein Leck uC GPIO für einen Moment hoch treiben kann ...
(Die Pull-Widerstände könnten zu hoch, auch bekannt als schwach, sein, aber ich kann nicht viel tiefer gehen (ich habe gesehen, dass 500k dieses Oszillationsproblem lösen), weil ich den Stromverbrauch für diese Schaltung sehr niedrig halten muss. Diese 10M-Widerstände erlauben mir das Zeichnen Sie insgesamt ~ 5 uA Durchschnitt - was ideal wäre.)
Mein erster Eindruck war, dass R1 und R2 viel zu groß sind. 10 M kann in einigen Anwendungen als offener Stromkreis angesehen werden.
Versuchen Sie, diese Widerstände zu verringern, und prüfen Sie, ob Ihre Schwingungen bestehen bleiben.
Wenn die Oszillationen aufhören, können Sie den Widerstand wieder erhöhen, ihn aber mit kleinen Keramikkondensatoren umgehen, um eine niederohmige Rückleitung für Transienten bereitzustellen.
Das Entwerfen von Systemen mit geringem Stromverbrauch ist nicht einfach, und Sie werden versucht sein, große Widerstandswerte zu verwenden, aber sie verursachen häufig Probleme wie das von Ihnen beschriebene.
Keine Garantien, aber ich habe in sehr ungefähr gleichwertigen Situationen gute Ergebnisse erzielt, indem ich dem Steuereingang eine kleine Hysterese hinzugefügt habe.
Platzieren Sie in diesem Fall zB einen kleinen Widerstand Rh in der Source von FET M1 und führen Sie R2 an die Spitze von Rh zurück. Wie klein "klein" ist, ist eine Frage des Experiments oder möglicherweise des Designs - obwohl in diesem Fall genügend Unsicherheiten bestehen, dass das Experiment wahrscheinlich ein guter Anfang ist.
Wenn uCGPIO niedrig ist, ist M1 ausgeschaltet und die Spitze von Rh ist auf Masse.
Wenn uCGPIO hoch geht, schaltet M1 ein, der Strom in Rh erzeugt eine kleine positive Spannung in Rh und die Spannung am Gate von M1 steigt.
Dieser Effekt kann möglicherweise leicht erhöht werden, indem ein z. B. 1 M Widerstand Rd zwischen M1gate / R2-Übergang und uCGPIO platziert wird. Dadurch wird ein formellerer Spannungsteiler bereitgestellt, der durch [Rd] – [R2 – Rh] gebildet wird.
Ohne Rd versucht die erhöhte Spannung, die von Rh bereitgestellt wird, uCGPIO zu "heben", das eine niedrige Impedanz hat. Mit Rd kann die Spannung am Gate durch die Spannung an Rh "angehoben" werden, da Rd den uC-Treiber mit niedriger Impedanz isoliert.
Hoffentlich :-).
Beschlossen, meine eigene Antwort hinzuzufügen, da ich etwas anderes getan habe, was hier von anderen bereitgestellt wurde.
Am Ende habe ich einen anderen MOSFET verwendet, nämlich FDY4000CZ.
Es zeigte stabilere Ergebnisse, selbst mit meinen aktuellen hohen Pull-up- und -down-Widerständen. In gewisser Weise kam die Antwort von @swles meinem Verdacht am nächsten und bestätigte sie auch, war aber mit dem ursprünglichen MOSFET keine gute Lösung, da ich ~ 500k-Widerstände verwenden musste, die den geringen Stromverbrauch stark erhöhen.
Das Ersetzen des aktuellen MOSFET durch einen anderen mit einer etwas höheren Schwellenspannung erzeugt jedoch keine so langen Schwingungen und stirbt nach einigen Spitzen ab.
Zumindest schließt der Stromkreis und entlädt meine Knopfzelle nicht. Ich kann damit leben :).
Feuerstelle
Tony Stewart EE75
Krypton
Krypton
Feuerstelle