(Haftungsausschluss für den Fall, dass es nicht schmerzlich offensichtlich ist - ich bin ein n00b, besonders wenn es darum geht, Transistoren zu verstehen).
Ich dachte, ich hätte alles herausgefunden - ein p-Kanal-MOSFET ist (oder kann als) ein High-Side-Schalter für eine andere Spannungsquelle verwendet werden als die, auf der meine MCU läuft. Um mein Verständnis zu testen, habe ich Folgendes auf einem Steckbrett zusammengestellt:
simulieren Sie diese Schaltung - Schema erstellt mit CircuitLab
Mit dem Code auf U1 (einem 5-V-Arduino) kann ich die Leitung hoch oder niedrig fahren oder in einen High-Z-Zustand versetzen, um alle drei Szenarien zu simulieren. Ich hatte erwartet, dass eine niedrige LED die LED bei 9 V leuchten lassen würde und eine hohe LED die LED ausschalten würde (0 V am Mosfet Drain). Was tatsächlich geschah, war - überhaupt kein Licht und der Drain hatte eine Spannung von 6 V (5,9 V). Ich bin ziemlich verwirrt - was ist hier los?
Hier ist der Mosfet, den ich verwende: https://www.sparkfun.com/datasheets/Components/General/FQP27P06.pdf
Es soll sogar von einem 3,3-V-Logikpegel gesteuert werden, daher sollten 5 V in Ordnung sein.
In Ihrem Schaltkreis müssen einige Dinge geändert werden:
Sie möchten das MOSFET-Gate auf 9 V ziehen, nicht auf VCC.
Sobald Sie dies getan haben, können Sie den LED_EN-Pin nicht direkt verwenden, da er wahrscheinlich nicht 9V-tolerant ist.
Um dies zu beheben, können Sie einen N-Kanal-MOSFET verwenden, um das Gate des P-FET herunterzuziehen.
Sie benötigen einen Strombegrenzungswiderstand an der LED.
Hier ist ein Diagramm, das ich für eine andere Antwort gemacht habe :
Dies treibt einen Motor an, aber dieselbe Schaltung funktioniert zum Ansteuern einer LED (mit einem zusätzlichen Widerstand). Ich denke, die verknüpfte Antwort gibt Ihnen auch einige gute Informationen, wenn ich es selbst sage! :) :)
Viel Glück.
quelle
Ihre Schaltung wie sie ist funktioniert überhaupt nicht. Es sollte immer eingeschaltet sein, da Sie immer einen Vsg> Vthreshold haben. Was Sie brauchen, ist der 10k-Widerstand, der an die 9V-Leitung angeschlossen ist. Dies funktioniert jedoch nur, wenn Ihr 5V-Logikblock im High-Z-Modus bis zu 9V blockieren kann. Grundsätzlich schaltet sich das PMOS aus, wenn die High-Side die gleiche Spannung wie das Gate hat. Das pmos wird eingeschaltet, wenn die Gate-Spannung ~ 0,7 V (Vthreshold) unter die Quellenspannung fällt.
Zum Einschalten möchten Sie High-Z fahren und zum Ausschalten möchten Sie die Gate-Spannung auf 0 senken.
quelle