GPIO Pin Bezeichnung?
Guten Tag,
ich bin in dem Bereich GPIO (mit einem Raspberry Pi) leider noch völlig unerfahren und hätte disbezüglich eine Frage:
Auf dem folgendem Bild habe ich ein Bereich eingekreist (GPIO3 / 5):
Wenn ich die Pins in Python mit GPIO.setup(PIN, GPIO.OUT) einrichte, muss ich dort bei PIN dann 3 (wegen GPIO3) oder 5 Schreiben (Weil es Pin Nummer 5 ist)?
Danke im Vorraus!
4 Antworten
Das sollte deine Frage beantworten: https://hackenlernen.com/blog.php?t=raspberry-pi-gpio
Mit
GPIO.setmode(GPIO.BCM)
kannst du die GPIO-Nummern anstatt der physischen PIN-Nummern verwenden.
Um es etwas zu präzisieren mit
GPIO.setmode(GPIO.BCM)
GPIO.setup(3, GPIO.OUT)
und
GPIO.setmode(GPIO.BOARD)
GPIO.setup(5, GPIO.OUT)
sprichst du den selben PIN an - nur mit einem anderen Nummerierungsschema.
Ich finde das BOARD-Schema einfacher. Man kann die Pins einfach zählen und muss sich nur merken wie die Nummerierung verläuft (sprich 1 und 2 nebeneinender dann 3 und 4 in der 2. Reihe, usw.). Pin 1 ist am Board markiert.
Die GPIO-Nummerierung ist wild durcheinander und man braucht immer den Plan.
Du musst die 3 benutzen, da es sich bei GPIO3 nur um den Namen des Pins handelt. das heißt die GPIOs sind einfach der Reihe nach durchnummeriert. Die 5 ist die tatsächliche Nummer für den Pin. Das kannst du auch weiter unten erkennen, bei GPIO10/9/11, diese sind nämlich völlig durcheinander, während die andere Nummerierung durchgängig ist.
Du musst die GPIO-Nummer (in dem Fall also 3) verwenden.
Das andere ist die "physical pin number" (in dam Fall 5).
Die GPIO-Nummer hat etwas mit der Ansteuerung der Leitungen durch die CPU zu tun.
Die "physical pin number" hingegen hängt von der physischen Lage der Kontakte am Steckverbinder ab.
GPIO3 ist die funktionale Bezeichnung des Pins intern, das müsstest du hier verwenden.