Raspberry Pi GPIO & Elektronische Bauteile: Grundlagen, Breadboard-Einführung, Bauteile der Elektronik für Einsteiger

Als Video ansehen
Bereitgestellt über YouTube

Raspberry Pi GPIO & Elektronische Bauteile: Grundlagen, Breadboard-Einführung, Bauteile der Elektronik für Einsteiger

Die GPIO-Leiste ist eine Besonderheit des Raspberry Pi gegenüber anderen Computern: GPIO steht für General Purpose Input/Output, also Allzweck Eingang/Ausgang. Man kann diese Anschlüsse universell als Ausgang nutzen, um z.B. eine LED oder andere Bauteile zu steuern. Oder als Eingang, der Signale von anderen Geräten/Bauteilen empfängt und weiter verarbeitet. Schalter wären hierfür ein einfaches Beispiel. Das ist aber noch nicht alles: Einige Pins unterstützen spezielle Funktionen und Protokolle, unter anderem verschiedene Bussysteme wie z.B. SPI oder I2C. Dies würde allerdings den Rahmen sprengen, wir fokussieren uns im Folgenden auf die vergleichsweise einfache Funktion als Ausgang, um eine Leuchtdiode (LED) zu betreiben.

Einführung in den GPIO-Header des Raspberry Pi

In der Dokumentation findet man die hierzu notwendige Beschreibung, welcher der insgesamt 40 Pins des Raspberry Pi welchen Zweck erfüllt. Wichtig ist, den Pi richtig herum zu halten – Masse muss links unten gegenüber von der Netzwerkschnittstelle liegen!

GPIO pins
Quelle: Raspberry Pi Dokumentation

Man kann sich dies mit dem Befehl pinout auch auf der Konsole des Pi selbst ausgeben lassen:

$ pinout
,--------------------------------.
| oooooooooooooooooooo J8   +======
| 1ooooooooooooooooooo  PoE |   Net
|  Wi                    1o +======
|  Fi  Pi Model 4B  V1.1 oo      |
|        ,----. +---+         +====
| |D|    |SoC | |RAM|         |USB3
| |S|    |    | |   |         +====
| |I|    `----' +---+            |
|                   |C|       +====
|                   |S|       |USB2
| pwr   |hd|   |hd| |I||A|    +====
`-| |---|m0|---|m1|----|V|-------'

Revision           : c03111
SoC                : BCM2711
RAM                : 4GB
Storage            : MicroSD
USB ports          : 4 (of which 2 USB3)
Ethernet ports     : 1 (1000Mbps max. speed)
Wi-fi              : True
Bluetooth          : True
Camera ports (CSI) : 1
Display ports (DSI): 1

J8:
   3V3  (1) (2)  5V
 GPIO2  (3) (4)  5V
 GPIO3  (5) (6)  GND
 GPIO4  (7) (8)  GPIO14
   GND  (9) (10) GPIO15
GPIO17 (11) (12) GPIO18
GPIO27 (13) (14) GND
GPIO22 (15) (16) GPIO23
   3V3 (17) (18) GPIO24
GPIO10 (19) (20) GND
 GPIO9 (21) (22) GPIO25
GPIO11 (23) (24) GPIO8
   GND (25) (26) GPIO7
 GPIO0 (27) (28) GPIO1
 GPIO5 (29) (30) GND
 GPIO6 (31) (32) GPIO12
GPIO13 (33) (34) GND
GPIO19 (35) (36) GPIO16
GPIO26 (37) (38) GPIO20
   GND (39) (40) GPIO21

In klammern stehen auf der obigen Grafik jeweils die zusätzlichen Spezialfunktionen. Ground (oft auch als GND abgekürzt) ist Masse, also der Minus-Pol.

Wichtig ist auch zu wissen, dass es zwei Arten der Nummerierung gibt: Einmal die oben links startende fortlaufende Durchnummerierung aller Pins, unabhängig von ihrer Funktion. Sie wird GPIO Board genannt.

Unabhängig davon gibt es GPIO BMC: Hier werden nur die GPIO-Pins nummeriert. Da in erstem Falle auch Pins die keine GPIO-Funktion liefern wie 3V, 5V, oder Masse eingeschlossen sind, entscheiden sich beide voneinander. Dies sieht man beispielsweise an Pin 16, der mit GPIO-Nummerierung die 23 erhält.

Grundsätzlich kann man beide Varianten benutzen. Ich würde jedoch GPIO Board empfehlen, da dies am sichersten für mögliche Änderungen ist. Die GPIO BMC Spezifikation hat sich bei einer Revision des Raspberry Pi 1 bereits geändert.

Vor allem wenn man sich für die speziellen Funktionen interessiert, ist pinout.xyz interessant. Dort werden diese farblich hervorgehoben und man sieht daher sofort, welche „nur“ einfache GPIO-Pins sind (z.B. GPIO 23) und welche man noch für andere Zwecke verwenden kann.

Graphical Raspberry Pi GPIO Pinout

Gerade wenn ihr keinen Aufsteck-Header mit den Farben habt, kann es hilfreich sein, sich die Pin-Belegung auszudrucken und neben den Pi zu legen.

Das sollte man grundsätzlich bei GPIO-Pins beachten

Der Raspberry Pi liefert 3,3V und 5V. Allerdings als Bereich, d.H. man kann nicht von einer stabilen Spannung ausgehen. Vor allem unter Last muss mit Einbrüchen gerechnet werden. Üblicherweise setzt man Widerstände ein. Sie helfen nicht nur, einen gewünschten Pegel zu erreichen. Sondern sind auch zur Strombegrenzung wichtig: Der Raspberry Pi ist nicht für starke Ströme ausgelegt! Leider gibt es kein offizielles Limit. 2 bis 16 mA gilt laut verschiedener Erfahrungswerte als sicherer Bereich für einen einzelnen Pin. Sämtliche GPIO-Pins zusammen sollten 50 mA nicht überschreiten. Höhere Lasten sind möglich, allerdings mit dem Risiko, den Pi zu beschädigen.

Kleinere Verbraucher wie eine LED kann der Raspberry Pi zwar noch versorgen. 5V eignet sich dazu etwas besser als 3,3V. Tendenziell sollte man jedoch – vor allem bei stärkeren Verbrauchern – eine externe Stromquelle verwenden, sodass der Pi nur den Steuerstrom liefert. Dies kann über einen Transistor erfolgen.

GPIO-Pins mit mit TXD-Doppelfunktion können hier problematisch sein, weswegen es sich empfiehlt, auf andere Pins auszuweichen. Betroffen ist davon Pin 8 (GPIO 14)

Grundlegende Bauteile für elektronische Schaltungen

Wenn ihr mit elektronischen Schaltungen experimentiert, sind ein paar Dinge notwendig. Gerade Kits bieten sich an, damit ihr ein paar Grundlegende Bauteile besitzt, die man häufig benötigt. Der Einzelkauf vieler Bauteile ist fast kaum mehr möglich. Außer ihr habt noch einen Elektronikladen in der Nähe, der euch einzelne Widerstände, Kondensatoren etc. für ein paar Cent verkauft. Meist ist das jedoch nicht mehr der Fall, daher empfehle ich:

Breakout Boards sind die Grundlage für experimentelle Schaltungen: Man kann darauf Bauteile platzieren und mit Kabeln (Weiblich auf Weiblich, d.H. beide Enden haben Stecker) miteinander verbinden. Über Weiblich auf Männlich kann man den Stecker mit dem Board verbinden und die Buchse mit einem Anschluss des Raspberry Pi. Alternativ dazu liefert das verlinkte Extension Board einen Stecker mit Flachbandkabel, sodass die GPIO-Pins direkt auf dem Board zur Verfügung stehen:

In beiden Fällen hat man relativ sichere Verbindungen, die aber jederzeit wieder verändert werden können. Über feste Verlötungen sollte man erst nachdenken, wenn eine Schaltung funktioniert und man diese dauerhaft betreiben möchte.

Um sie richtig nutzen zu können und Kurzschlüsse zu vermeiden, ist es wichtig zu verstehen, wie die Anschlüsse intern verbunden sind:

Am oberen und unteren Rand finden sich jeweils zwei Streifen. Alle Kontakte einer Zeile sind miteinander verbunden. Sie eignen sich idealerweise als „Stromschiene“: An einen könnt ihr beispielsweise Masse (-) anschließen, an den anderen eine Versorgungsspannung. Durch die vielen Anschlüsse ist es kein Problem, mehrere Bauteile damit versorgen. Da es insgesamt vier solcher Schienen gibt, kann man auch mehrere Spannungen auf einem Board bereitstellen.

Der innere Bereich ist für die Platzierung von Bauteilen vorgesehen, daher sind dort Spalten miteinander verbunden. Im Gegensatz zu den Stromschienen nicht durchgehend, sondern nur bis zur Hälfte des Boards. So lassen sich mehr Bauteile platzieren, die nicht zwingend miteinander verbunden sein können. Im obigen Bild habe ich beispielhaft einige Linien eingezeichnet, jede Farbe wäre dort miteinander verbunden.

Vor allem wenn ihr die GPIO-Pins händisch über Kabel verbindet, ist ein Aufsatz-Stecker hilfreich, der die Pins farblich kennzeichnet. Das vereinfacht die Verkabelung und verhindert, dass man sich versehentlich verzählt – wodurch ein Kurzschluss entstehen kann.

Weiteres nützliches Zubehör

Damit habt ihr eine solide Grundlage, um einige Schaltungen ausprobieren zu können. Je nachdem was ihr alles machen möchtet, machen ggf. noch ein paar andere Dinge zusätzlich Sinn, beispielsweise:

Wobei dies nicht zwingend nötig ist bzw. es teils auch Alternativen gibt. Ein kleines Universal-Netzteil mit 7 gängigen Spannungen und max. 1A kann beispielsweise für manche Anwendungsfälle durchaus ein deutlich günstiger Kompromiss darstellen. Was wirklich nötig ist, hängt daher von den Umständen ab. Gerade solche größeren Anschaffungen würde ich nicht pauschal tätigen, sondern nur wenn tatsächlich Bedarf da ist.

Leave a Reply