Raspberry Pi GPIO-Pinbelegungen: Wie funktioniert das?

Lesezeit 5 min.

Jedes Raspberry Pi-Modell, beginnend mit dem B+, hat 40 GPIO-Pins. In diesem Artikel werden wir versuchen, die Funktionsweise jedes einzelnen von ihnen zu beschreiben und sie in verschiedene Kategorien einzuteilen.

Siehe auch unseren Artikel: Was ist ein Raspberry Pi

GPIO-Pinbelegungen – Raspberry Pi

Was bedeutet Raspberry Pi GPIO?

General Purpose Input Output (GPIO) ist der grundlegendste Aspekt des Raspberry Pi-Minicomputers. Die GPIO-Pins sind digital, das heißt, sie haben zwei Zustände: EIN oder AUS. Sie können eine Empfangs- oder Senderichtung haben (jeweils Eingang/Ausgang).

Der GPIO auf dem Raspberry Pi hat viele verschiedene Arten von Pins. Wenn Sie überprüfen möchten, welche Pins für die Masse zuständig sind, welche für die Stromversorgung und welche für die Kommunikation verwendet werden können, geben Sie “pinout” in den Raspberry auf der Kommandozeile ein.

Raspberry Pi GPIO – Programmierung

Wir können ihren Zustand und ihre Richtung mit geeigneten Programmiersprachen wie Python, JavaScript, node-RED usw. steuern.

Die GPIO-Pins arbeiten mit 3,3 V und einer maximalen Strombelastung von 16 mA. Das bedeutet, dass wir eine oder zwei LEDs sicher von einem einzigen GPIO-Pin über einen Widerstand versorgen können. Für alles, was mehr Strom verbraucht, wie z. B. ein Gleichstrommotor, benötigen wir jedoch externe Komponenten. Andernfalls könnten wir unseren Raspberry Pi beschädigen.

Die Steuerung von GPIO-Pins durch Python-Programmierung erfordert den vorherigen Import der entsprechenden Bibliotheken mit vorbereiteten Codes. Die beliebteste Bibliothek ist RPi.GPIO, mit der Tausende von Projekten erstellt wurden. Anschließend entstand eine Bibliothek namens GPIO Zero, die für Anfänger in Python und Elektronik entwickelt wurde. Beide Bibliotheken wurden in Raspbian integriert.

Namen der einzelnen GPIO-Pins des Raspberry Pi

Die einzelnen GPIO-Pins haben viele Namen. Der erste, offensichtlichste Name ist die physische Position des GPIO. Ausgehend von der oberen linken Ecke des GPIO, der Pin, der dem Steckplatz am nächsten ist microSD-KartenWir haben den Pin 1, der eine 3,3-V-Versorgung liefert. Rechts von diesem Pin befindet sich der physische Pin 2, der 5 Volt liefert. Die Pin-Nummern erhöhen sich von Spalte zu Spalte, wobei Pin 1 zu den Pins 3, 5, 6 usw. führt, bis wir Pin 39 erreichen. Jeder Pin in dieser Spalte hat eine ungerade Nummer. Für die Spalte, die mit Pin 2 beginnt, sind es 4, 6, 8 usw. bis zu Pin 40. Die physische Nummerierung der Pins ist die einfachste Art, die Pins zu lokalisieren, aber viele Tutorials zeigen eine andere Nummerierungsreihenfolge.

Die Broadcom (BCM) Nummerierung als Raspberry Pi GPIO Nummerierung, sieht für unerfahrene Benutzer chaotisch aus. GPIO17, 22 und 27 folgen einander mit wenig Gedanken an eine logische Nummerierung. Die BCM-Pin-Zuordnung bezieht sich auf die GPIO-Pins, die direkt mit dem SoC des Raspberry Pi verbunden sind. Dadurch haben wir direkte Verbindungen zum Raspberry Pi-Gehirn, um die für unser Projekt benötigten Sensoren und Komponenten anzuschließen.

Die meisten Raspberry Pi-Tutorials verwenden dieses Nummerierungsschema, da es offiziell von der Raspberry Pi Foundation unterstützt wird. Es ist die beste Praxis, das BCM-Nummernschema zu verwenden und zu lernen. BCM und GPIO-Nummerierung beziehen sich auf das gleiche Schema. Zum Beispiel ist GPIO17 das gleiche wie BCM17.

Einige RPI-GPIO-Pins haben auch alternative Funktionen. Sie ermöglichen den Anschluss an verschiedene Gerätetypen mit I2C-, SPI- oder UART-Protokollen. Zum Beispiel sind GPIO13 und GPIO4 auch die SDA- und SCL-Pins des I2C-Busses. Sie werden für den Anschluss von Geräten verwendet, die diese Protokolle verwenden. Diese Schnittstellen müssen in der Konfiguration von Raspbian OS aktiviert werden.

Unser Shop bietet eine GPIO-Erweiterung für den Raspberry Pi an, mit der GPIO-Pins vom Raspberry Pi auf ein Prototypenboard übertragen werden können.

ProtoPi Plus-Modul

I2C, SPI, UART: Welcher ist zu verwenden?

Die Unterschiede zwischen I2C, SPI und UART werden im Folgenden beschrieben. Wenn Sie sich jedoch fragen, welche Schnittstelle Sie für den Anschluss Ihres Geräts verwenden sollen, lautet die kurze Antwort: Prüfen Sie die Produktspezifikation. Beispielsweise erfordert eine kleine LED-Anzeige die Verwendung von SPI-Kommunikation, während ein anderes Gerät die Verwendung von I2C erfordern kann. In der Regel enthält die Produktdokumentation Angaben zu den für den Anschluss erforderlichen Pins.

LCD-Anzeige

I2C

I2C ist ein freies Zwei-Leiter-Protokoll zur Verbindung von Geräten nach dem I2C-Standard. Geräte, die diesen Standard verwenden, haben eine Master-Slave-Beziehung. Es kann mehr als einen Master geben, aber jedes Slave-Gerät benötigt eine eindeutige Adresse, die vom Hersteller vergeben wird. Dies bedeutet, dass wir mehrere Geräte an einer einzigen I2C-Verbindung verwenden können, da jedes Gerät eindeutig ist und vom Benutzer und Computer mit Befehlen wie i2cdetect erkannt werden kann.

Wie bereits erwähnt, hat I2C zwei Anschlüsse: SDA und SCL. Sie funktionieren durch das Senden von Daten an und von SDA, mit einer durch den SCL-Pin gesteuerten Rate. I2C ist eine einfache Methode, um viele Geräte wie LCD-/OLED-Displays, Temperatursensoren und DACs mit Fotowiderständen zu verbinden.

Der Raspberry Pi hat zwei I2C-Anschlüsse in GPIOs 2 und 3 (SDA und SCL) für i2C0 (Master), und die physikalischen Pins 27 und 28 sind I2C-Pins, die die Kommunikation mit kompatiblen HAT-Overlays ermöglichen.

SPI

Dies ist ein weiteres Protokoll zum Anschluss kompatibler Geräte an den Raspberry Pi. Es ist ähnlich wie I2C, da es eine Master-Slave-Beziehung zwischen dem Raspberry Pi und dem angeschlossenen Gerät gibt.

Üblicherweise wird SPI verwendet, um Daten über kurze Strecken zwischen Mikrocontrollern und Komponenten wie Schieberegistern, Sensoren oder SD-Karten zu übertragen. Die Daten werden mit einem Takt (SCLK auf GPIO11) vom Master synchronisiert. Im Gegenzug werden die Daten über den MOSI-Pin (GPIO10) vom Pi an unser SPI-Gerät übertragen. MOSI steht für Master Out Slave In. Wenn eine Komponente auf unseren Pi antworten muss, sendet sie Daten über den MISO-Pin (GPIO9) zurück, was für Master In Slave Out steht.

UART

Er ist allgemein als “serieller” UART-Pin (Transmit GPIO14, Receive GPIO15) bekannt und ermöglicht das Logging zu einer Konsole/einem Terminal, ohne dass eine Tastatur oder ein anderes Zeigegerät benötigt wird. Die einfachste Methode, den Raspberry Pi drahtlos zu steuern, ist über das Netzwerk oder USB.

Wenn Sie jedoch keine Internetverbindung haben, können Sie den Raspberry Pi über ein serielles Kabel oder ein USB-Seriell-Wandlermodul in Verbindung mit einem Computer über eine Terminal-Konsole steuern. Der UART ist äußerst zuverlässig und ermöglicht den Zugriff auf den Raspberry Pi, ohne dass zusätzliche Geräte benötigt werden. Denken Sie nur daran, die serielle Konsole in der Raspberry-Steuerungsanwendung zu aktivieren.

Masse (GND)

Die Masse wird üblicherweise als GND, gnd oder – bezeichnet. GND ist der Punkt, an dem alle Spannungen gemessen werden können und der Stromkreis geschlossen ist. Er ist unser Nullpunkt, und wenn wir ein Bauteil wie eine LED an eine Stromquelle und GND anschließen, wird das Bauteil Teil des Stromkreises und Strom fließt durch die LED und erzeugt Licht.

Beim Aufbau von Schaltungen ist es immer ratsam, vor dem Anlegen von Spannung Masseverbindungen herzustellen, um mögliche Schäden an empfindlicheren Komponenten zu vermeiden. Der Raspberry Pi hat acht GND-Leitungen an den GPIOs. Die Wahl des Masseanschlusses hängt also von den persönlichen Vorlieben oder der Bequemlichkeit beim Anschluss von Komponenten ab.

5V

Die 5 V-Pins bieten direkten Zugang zur 5 V-Stromversorgung aus dem Netzteil. Der Raspberry kann direkt über diese Pins mit Strom versorgt werden und kann auch andere 5 V-Geräte mit Strom versorgen. Wenn Sie diese Pins direkt verwenden, seien Sie vorsichtig und überprüfen Sie die Spannung, bevor Sie die Verbindung herstellen, da sie alle Sicherheitsfunktionen wie den Spannungsregler und die Sicherung, die den Minicomputer schützen, umgehen.

3V3

Der 3 V-Pin sorgt für eine stabile Versorgung mit 3,3 V. In der Tat ist es selten, dass dieser Pin in der Zusammenstellung enthalten ist, aber er hat eine besondere Verwendung. Sobald die LED mit dem GPIO verbunden ist, stellen wir sicher, dass die LED richtig angeschlossen ist und leuchtet. Indem wir das Bein der LED, die Anode, über einen Widerstand mit dem 3.3 V-Pin und das kürzere Bein, die Kathode, mit GND verbinden, können wir überprüfen, ob unsere LED leuchtet. Dadurch wird ein Hardware-Fehler im Entwurf beseitigt und wir können ohne Bedenken mit dem Bau unseres Projekts beginnen.

Quelle:https://www.tomshardware.com/reviews/raspberry-pi-gpio-pinout,6122.html

GPIO – FAQ

GPIO (General Purpose Input Output) sind digitale Pins, die nur zwei Zustände haben, nämlich ON oder OFF. Die einzelnen Pins unterscheiden sich unter anderem in der Richtung der Stromführung (Empfangen, also Eingang, und Senden, also Ausgang). Eine Beschreibung aller 40 GPIO-Pins des Raspberry Pi Minicomputers finden Sie in diesem Artikel.

Um eine Diode an den Raspberry Pi-Minicomputer anzuschließen, verbinden Sie das längere Bein der Diode (d.h. die Anode) über einen 1,2 kΩ-Widerstand (Widerstand) mit Pin Nummer 40. Die Kathode, also der kürzere Schenkel der Diode, muss mit der Masse verbunden sein und sollte daher an Pin 39 angeschlossen werden.

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 4.4 / 5. Stimmenzahl: 10

Bisher keine Bewertungen! Sei der Erste, der diesen Beitrag bewertet.

Teilen:

Picture of Grzegorz Galuba

Grzegorz Galuba

GG nie ma czasu na gadu-gadu - jest zawsze na bieżąco z nowościami z oferty, wybiera tylko najlepsze i dba, aby pojawiały się na czas. Jego rozległa wiedza o specyfikacjach technicznych produktów to nieocenione wsparcie dla całej ekipy. Do pracy przyjeżdża rowerem i już najwyższa pora, aby wszyscy zaczęli brać z niego przykład. Oaza spokoju.

Siehe mehr:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Aus Sicherheitsgründen ist die Verwendung des reCAPTCHA-Dienstes von Google erforderlich, der den Google-Datenschutzbestimmungen und Nutzungsbedingungen unterliegt..