Alles, was Sie über Raspberry Pi GPIO-Pins wissen müssen
Vom Spielen bis hin zum Betreiben eines Kodi-Entertainment-Systems – mit einem Raspberry Pi können Sie eine Menge machen. Aber Sie können noch mehr Dinge tun, wenn Sie sich mit dem General Purpose Input-Output (GPIO) auskennen. Hier ist eine Anleitung, die Sie mit der Arbeit mit den GPIO-Pins des Raspberry Pi vertraut macht!
Was sind Raspberry Pi GPIO-Pins?
Bei den GPIO-Pins des Raspberry Pi handelt es sich um Metallstifte, die an einer Seite herausragen, genau gegenüber der Stelle, an der sich die HDMI- und Stromanschlüsse befinden.
Allerdings gelten nicht alle dieser Pins als „GPIO“. Davon können 26 als Eingangs- und Ausgangslogik-Pins festgelegt werden. Das sind die GPIO-Pins. Der Rest sind Power-Pins.
Indem Sie diese entweder in Eingangs- oder Ausgangspins programmieren, können Sie sie in einen logischen Computer verwandeln, der Eingänge lesen und Ausgänge anzeigen kann. Sie können beispielsweise einen Eingangspin mit einer Drucktastenschaltung und einen Ausgangspin mit einer LED verbinden, sodass diese aufleuchtet, wenn die Drucktaste gedrückt wird.
Pinbelegung des Raspberry Pi
Bevor Sie jeden Pin in Ein- und Ausgänge programmieren können, müssen Sie zunächst wissen, welche Pins welche sind.
Jeder Pin am Raspberry Pi ist von 1 bis 40 nummeriert. Wenn Sie den Raspberry Pi so betrachten, dass die USB-Anschlüsse zum Boden zeigen, sollte der Pin oben links Pin 1 sein. Der Pin rechts davon ist Pin 1 Pin 2, und die Zählung wird fortgesetzt, bis Sie Pin 40 unten rechts erreichen.
Die folgenden Pins sind nun keine GPIO-Pins, sondern Power-Pins, die entweder ständig aufgeladen werden, um eine Spannung auszugeben (3v3 und 5V) oder die Spannung empfangen sollen (Masse).
- 1 & 17 (3v3)
- 2 & 4 (5V)
- 6, 9, 14, 20, 25, 30, 34, 39 (Boden)
Normalerweise können Sie diese Pins beim Namen nennen. Wenn Sie also Pin 7 als GPIO bezeichnen, können Sie ihn einfach Pin 7 nennen. Dies wird als BOARD-Nummerierung bezeichnet .
Andererseits können Sie sie auch anhand ihrer individuellen Nummerierung basierend auf dem Prozessorchip der Peripheriegeräte aufrufen. Dies wird als BCM-Nummerierung bezeichnet und trägt diesen Namen, weil der Chip, der diese Pins betreibt, zur BCM-Prozessorfamilie gehört.
Legen Sie die Eingangs- und Ausgangspins fest
Sie können die GPIO-Pins des Raspberry Pi mit Thonny programmieren, dem Standard-Python-Editor, der mit dem Raspberry Pi-Betriebssystem geliefert wird.
Der folgende Code legt Pin 7 (GPIO 4) als Ausgangspin und Pin 8 (GPIO 14) als Eingangspin unter Verwendung der BOARD-Nummerierung fest.
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD) // Set BOARD numbering.
GPIO.setup(7, GPIO.OUT) // Set pin 7 as an output pin.
GPIO.setup(14, GPIO.IN) // Set pin 14 as an input pin.
GPIO.output(7, GPIO.HIGH) // Make pin 7 output 3 volts.
GPIO.input(8) // Reads whether there's electricity passing through pin 8. Returns either a True or False that you can use in an if statement.
GPIO.output(7, GPIO.LOW) // Make pin 7 stop outputting 3 volts.
Erläuterung des Codes
Um mit GPIO-Pins arbeiten zu können, müssen Sie die GPIO-Bibliothek des Raspberry Pi importieren. Dies geschieht durch die Eingabe von import RPi.GPIO as GPIO
.
Danach müssen Sie den Modus einstellen. Wird verwendet GPIO.setmode(GPIO.BOARD)
, um den MicroPython-Interpreter anzuweisen, im BOARD-Modus zu lesen. GPIO.setmode(GPIO.BCM)
Oder zum Lesen im BCM-Modus verwenden .
Um die Pins zu setzen, müssen Sie die GPIO.setup(<pin>, <GPIO.OUT or GPIO.IN>)
Funktion verwenden. Es braucht zwei Argumente. Die erste ist die Pin-Nummer basierend auf dem Nummerierungsmodus, den Sie zuvor ausgewählt haben. Der zweite ist der Status, ob Sie ihn als Ausgangspin mit GPIO.OUT
oder als Eingangspin mit festlegen möchten GPIO.IN
.
Als nächstes können Sie die Ausgangspins mithilfe von entweder auf „High“ oder „Low“ setzen GPIO.output(<pin>, <GPIO.LOW or GPIO.HIGH>)
. Wenn Sie einen Ausgangspin auf HIGH setzen, wird er auf bis zu 3 Volt aufgeladen. Dies zählt in der Computerlogik als „Ja“ oder „1“. LOW bewirkt das Gegenteil und lädt es auf nahezu 0 Volt herunter.
Andererseits können Sie die Werte der Eingangspins lesen. Wenn sie 3 Volt erhalten, werden sie als HIGH registriert und einen booleschen Wert mit zurückgeben GPIO.input(<pin>)
. Boolesche Werte sind Werte, die entweder wahr oder falsch sind. Sie können diese Werte in while-Schleifen und if-Anweisungen verwenden, um noch tiefergehende logische Dinge daraus zu machen.
Anschließen von GPIO- und Power-Pins an Peripheriekomponenten
Die GPIO-Pins des Raspberry Pi werden als männliche Pins bezeichnet. Das liegt daran, dass sie über herausstehende Metallteile verfügen und nicht über eine Stiftablage wie beim Arduino Uno.
Die meisten Prototyping-Komponenten werden mit männlichen Stiften geliefert, um die Platzierung auf einem Steckbrett zu erleichtern. Sie können entweder Überbrückungsdrähte von Stecker zu Buchse verwenden, um diese auf einem Steckbrett zu verbinden, oder Überbrückungsdrähte von Buchse zu Buchse, um sie direkt mit den Komponenten selbst zu verbinden.
Außerdem finden Sie bei den meisten Komponenten manchmal direkt auf den Stiften eine „S“-, „IN“- oder „OUT“-Markierung. Das bedeutet, dass der Pin direkt daneben mit GPIO-Pins verbunden sein sollte. Die Markierungen hängen von der Komponente ab – viele Komponenten nennen sie nicht einmal so, weil sie etwa 3 bis 9 Signal-, Ein- oder Ausgangspins auf der Platine haben.
Um zu wissen, welcher Pin wo hingehört, können Sie im „Datenblatt“ nachschlagen. Dabei handelt es sich um Hinweise des Herstellers zur Verwendung der Komponente und zu ihrem erwarteten Verhalten. Diese sind modell- oder markenspezifisch, insbesondere wenn es sich um Module handelt, in die eine Vielzahl anderer Komponenten passen.
Pflege der GPIO-Pins des Raspberry Pi
GPIO-Pins sind sensible Dinge. Es ist leicht, sie zu zerbrechen, wenn man nicht aufpasst.
Zum einen müssen Sie sicherstellen, dass nur Stromquellen mit 3-Volt-Logik an diese Dinge angeschlossen werden. Das Anlegen von 5 Volt an einen beliebigen GPIO-Pin ist eine Möglichkeit, diese zu unterbrechen.
Eine andere Möglichkeit, sie zu beschädigen, besteht darin, einen Ausgangspin direkt mit einem Eingangspin zu verbinden, ohne dass dazwischen ein Widerstand oder eine Komponente vorhanden ist. Während die Spannung gleich bleibt, kann der vom Ausgangspin fließende Strom möglicherweise Ihren Eingangspin beschädigen.
Sobald Sie lernen, diese richtig zu nutzen, können Sie mit einem Raspberry Pi viele Dinge tun. Zum einen könnten Sie einen Gleichstrommotor daran anschließen und ihn auf Rädern laufen lassen oder als winzigen elektrischen Ventilator fungieren. Und wenn Sie Räder hinzufügen, können Sie sogar einen Raspberry Pi-Roboter drahtlos über SSH auf einer Powerbank steuern ! Diese GPIO-Pins erweitern die Fähigkeiten des Raspberry Pi auf weitaus größere Dinge, als er ohne sie könnte.
Bildnachweis: Unsplash
Schreibe einen Kommentar