Immer wieder taucht die Frage nach dem Anschluss von größeren Lasten bis zu 12 Volt auf, daher erkläre ich nachfolgend für Laien verständlich, wie diese anzuschließen sind. (Dem Physiker oder E-Techniker mögen wegen der gewählten Begriffe die Haare zu Berge stehen, aber für Einsteiger ist "Minus" leichter zu verstehen als "GND")
Ein GPIO liefert 3,3V und sollte mit maximal 2-4mA belastet werden, wie hier ausführlich erklärt wird. Daher dürfen größere Lasten wie Relais, Motoren, Lampen, etc. niemals direkt am GPIO betrieben werden.
Wichtig: GND (Minusleitungen) der beteiligen Komponenten müssen in allen Fällen zusammen liegen, so dass alle Geräte die selbe Masse haben.
Die Lasten werden über eine Schaltstufe angeschlossen. Der GPIO steuert hierbei einen NPN Transistor oder N-Kanal Mosfet an, der dann seinerseits laienhaft ausgedrückt als Schalter fungiert und GND (Minusleitung) zum Verbraucher schließt oder öffnet. Erklärt wird dies sehr ausführlich zum Beispiel bei mikrocontroller.net und elektronik-kompendium.de. Die nachfolgenden Informationen beziehen sich beispielhaft auf den Transistor BC337 und den Mosfet IRLZ44N. Andere Typen sind möglich, müssen aber evtl. anders beschaltet werden. Informationen darüber gibt es im Datenblatt.
Von dort stammen auch die angehangenen Grafiken.
Wird ein Verbraucher bis 500mA angeschlossen, wird ein Widerstand von 270 Ohm an den GPIO angeschlossen. An diesen Widerstand wird der Transistor BC337 mit dem mittleren Pin (Basis) angeschlossen. Schaut man von oben auf den Transistor und hält die flache Seite nach links, dann wird der nach oben ausgerichtete Pin (Kollektor) an den Verbraucher angeschlossen. Der nach unten ausgerichtete Pin (Emitter) wird an Masse angeschlossen.
Wer größere Lasten schalten möchte, kann dazu einen IRLZ44N nehmen. Dieser wird mit einem kleinen Vorwiderstand direkt an den GPIO angeschlossen. Hierzu wird, wenn man von vorne (Beschriftung ist sichtbar) auf den Mosfet schaut, der linke Pin an den GPIO angschlossen. Der mittlere Pin wird wieder an den Verbraucher angeschlossen und der rechte Pin an GND (Minus). Wichtig ist noch ein Widerstand von etwa 10 KOhm, der zwischen den GPIO und GND (Minus) geschaltet wird.
Alternativ kann man größere Lasten auch über Relais betreiben. Diese können aber nicht direkt an den GPIO angeschlossen werden, sondern müssen wieder über die bereits erklärte Schaltstufe angesteuert werden. Wichtig ist, dass man bei Relais, die keine integrierte Diode haben, eine Schutzdiode parallel zum Relais installiert. Hierzu kann man beispielsweise eine 1N4148 nehmen.
Für kleinere Lasten habe ich eine Platine entworfen, mit der Vcc (also die Plusleitung) geschaltet werden kann. Hierbei dient ein NPN Transistor als "Schalter" für den Mosfet, der dann seinerseits die Spannung schaltet.