Laufende Suche nach dem Verständnis von p-Kanal-MOSFETs

8

(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:

schematisch

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.

kolosy
quelle

Antworten:

11

Es liegt ein Fehler in der OP-Schaltung vor. Die LED kann nicht ausgeschaltet werden, daher leuchtet die LED immer. Um den P-Kanal-MOSFET auszuschalten, müssen Sie das Gate zur Quelle ziehen. Die Quelle liegt in Ihrem Stromkreis immer bei +9 V, aber der Pullup R1 geht nur auf +5 V (VCC).

Ein High-Side-P-Kanal-MOSFET-Schalter sieht oft so aus.

Geben Sie hier die Bildbeschreibung ein

Q2 kann ein kleiner N-Kanal-MOSFET oder ein kleiner NPN-Transistor sein.

Geben Sie hier die Bildbeschreibung ein

Gibt es andererseits einen Grund für die Verwendung eines High-Side-P-Kanal-Schalters (im Gegensatz zu einem Low-Side-N-Kanal-Schalter)? Machen Sie dieses Setup nur, um P-Kanal-MOSFETs besser zu verstehen?

Nick Alexeev
quelle
1
Ja, das ist nur zum Verständnis
Kolosy
1
aus Neugier - warum ist der Pulldown auf dem n-Kanal 100k und der Pullup auf dem p-Kanal 10k?
Kolosy
@kolosy Die Größe des Pull-Ups R1 bestimmt, wie schnell sich Q1 ausschaltet. Die Gatekapazität von Q1 entlädt sich über R1. Sowohl das Hochziehen als auch das Herunterziehen können 10k betragen (insbesondere, wenn Sie nicht für einen Betrieb mit sehr geringer Leistung fotografieren).
Nick Alexeev
Es kann erwähnenswert sein, dass einige Mikrocontroller Pins haben, die als Open-Drain konfiguriert werden können und eine Spannung außerhalb von VDD akzeptieren können, so dass die Treiberschaltung in das Gerät "gerollt" wird.
Kaz
1
Ich habe gerade die untere Version mit einem 2N3904 NPN, einem IRF9540 PNP-Mosfet und einer 50-W-LED mit einem Steckbrett versehen. Wird von einem schmitt NAND-Oszillator gesteuert. Funktioniert super!
Johny, warum
7

In Ihrem Schaltkreis müssen einige Dinge geändert werden:

  1. Sie möchten das MOSFET-Gate auf 9 V ziehen, nicht auf VCC.

  2. Sobald Sie dies getan haben, können Sie den LED_EN-Pin nicht direkt verwenden, da er wahrscheinlich nicht 9V-tolerant ist.

  3. Um dies zu beheben, können Sie einen N-Kanal-MOSFET verwenden, um das Gate des P-FET herunterzuziehen.

  4. Sie benötigen einen Strombegrenzungswiderstand an der LED.

Hier ist ein Diagramm, das ich für eine andere Antwort gemacht habe :

PMOS

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.

Bitsmack
quelle
cool - dein anderer Beitrag war definitiv sehr hilfreich.
Kolosy
@ Kolosy Ich bin froh zu helfen :)
Bitsmack
noch ein Follow-up? Die eigentliche Schaltung, auf die ich mich vorbereitet habe, ist eine Mosfet-Brücke mit zwei p- und zwei n-Kanal-Fets. Die Batteriespannung dort beträgt 6V, und die MCU ist immer noch 5V ino. Wenn die Klimmzüge dort korrekt auf 6 V und nicht auf VCC ziehen, brauche ich dann noch den n-Kanal oder kann der Ino einen Unterschied von 1 V bewältigen?
Kolosy
1
@kolosy Es kommt wirklich auf den Mikrocontroller an. Im Allgemeinen möchten Sie die E / A-Pins nicht über VCC (oder unter der Erde) haben. Sie können damit durchkommen. Schauen Sie im Datenblatt unter Absolute Maximum Ratings nach. Diese geben die Grenzwerte an, die verhindern, dass der Chip beschädigt wird, aber es wird nicht garantiert, dass er außerhalb der empfohlenen Werte funktioniert. Es wird oft :) Eine H-Brücke hat einige Feinheiten. Beispielsweise müssen die Ein- und Ausschaltzeiten der FETS berücksichtigt werden. Wenn Sie einen gleichzeitig mit dem Ausschalten eines anderen einschalten, kann es vorkommen, dass einer vor ...
bitsmack
... der andere hört auf. Dieser Kurzschluss kann ein Problem sein! Einige Mikrocontroller (zum Beispiel PICs) verfügen über eine programmierbare Totbandeinstellung und behandeln diese Zeitprobleme für Sie. Viel Glück!
Bitsmack
2

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.

Horta
quelle