Wie ein P-MOSFET funktioniert, ist klar, es gibt viele Dokumentationen im Internet. Aber was die Standardschaltung ist, um sie als idealen Schalter mit einer MCU zu verwenden, ist meiner Meinung nach nicht so klar.
Ich habe gesehen, dass es viele Schaltungen gibt, die einen vorgeschalteten NPN-Transistor oder einen N-MOSFET verwenden, um das Gate eines P-MOSFET zu steuern. Und wie sie funktionieren, ist sehr klar. Allerdings muss jeder dieser Schaltkreise eine Spannung schalten, die höher ist als die Spannung der MCU.
Angesichts dieser Schaltung:
Es scheint mir nicht, dass dies ohne eine vorgeschaltete Komponente funktionieren könnte, die mit GND the Gate verbunden wird, da der digitale Pin des Arduino kein Open-Drain-INPUT ist, sondern wie ein OUT funktioniert. Mit anderen Worten, Spannung oder keine Spannung. Dies sind meine Überlegungen zu dieser Schaltung. Bitte helfen Sie mir und allen, die Beantwortung dieser Punkte zu verstehen:
Liege ich falsch?
Sie geben an:
3. Wenn der digitale Arduino-Pin 0 V beträgt, ist das Gate immer noch +5 V, da der Arduino-Pin kein Open-Drain-Pin ist. Mit anderen Worten, dieser Pin verbindet sich nicht mit GND, lässt den Strom fließen und bringt den Pin in den digitalen Status 0.
Dies ist ein Missverständnis einer CMOS-Ausgangsstufe, die kein Open-Drain ist:
Es sieht aus wie das:
Da dies eine Gegentaktschaltung ist (im Normalbetrieb immer auf die Schienen getrieben), ist entweder der obere Transistor eingeschaltet (Ausgang hoch) oder der untere Transistor eingeschaltet (Ausgang niedrig; in beiden Fällen kann Strom fließen.
Update zu aktuellen Bedenken:
Wenn der Ausgang hoch ist und sich daher auf demselben Pegel wie der externe PMOS-Drain befindet, fließt kein Strom (weil die Spannung zwischen ihnen null oder sehr nahe daran ist). Wenn der Ausgang niedrig ist, fließt ein Strom von 5 V / externes PMOS-Gate zum Source-Widerstand.
Es ist nicht ungewöhnlich, Widerstände in der Größenordnung von 100 k zu sehen in diesem Anwendungsfall.
Ich stimme Olin voll und ganz zu, dass der Steuerstift zum Gate-Widerstand unnötig ist.
Die von Ihnen gezeigte Schaltung sollte funktionieren, wenn der FET mit -5 V gs sinnvoll eingeschaltet werden kann und der Pullup viel größer ist als der Vorwiderstand.
Den ersten Widerstand braucht man sowieso nicht. Sie könnten das Gate einfach mit einem schwachen Pullup an einen 0-5-V-Mikrocontrollerausgang anschließen, um sicherzustellen, dass es hoch ist, bevor die Firmware den Pin auf eine niedrige Impedanz setzen und hoch treiben kann. Das Setzen des Pullups nach dem Vorwiderstand erzeugt einen Spannungsteiler, der die Gate-Ansteuerung reduziert, was wahrscheinlich nicht wünschenswert ist.
Sie müssen einen Widerstand zwischen dem Arduino-Ausgang und dem Gate platzieren, um den Strom zu begrenzen, der in den durch das Gate gebildeten Kondensator fließt. Dies wird hier sehr gut erklärt Mosfet-Gate-Widerstand
Der Artikel schlägt vor, dass Sie einen Widerstand von 100 - 220 Ohm verwenden sollten, um den Strom vom Arduino auf sichere Werte zu begrenzen (Kompromiss zwischen Schaltgeschwindigkeit und Strom).
JimmyB
bitsmack
Cuadue
Zdenek