Wie kann ich mehr GPIO-Ports auf dem Raspberry Pi verwenden?

15

Ich plane derzeit ein Projekt für einen Kurs in der Schule, bei dem der Raspberry Pi verwendet wird. Ich bin jedoch besorgt, dass ich nicht genügend GPIO-Anschlüsse für die Ein- und Ausgänge habe, die ich für das Projekt benötige. Was kann ich verwenden, um die Anzahl der Connectors zu erweitern, die ich verwenden kann?

Wenn es möglich ist, wie kann ich die neuen Konnektoren mithilfe der RPI.GPIO-Bibliothek in Python nutzen?

ChaoticPanda
quelle
Möglicherweise Duplikat von Immer mehr als 26 GPIO-Pins
Moshe Katz

Antworten:

13

Eine weitere Option wäre die Verwendung eines Port-Expanders, um zusätzliche E / A-Ports zu erhalten. Der MCP23008 kann beispielsweise über I²C verbunden werden (verwendet nur zwei Pins) und bietet Ihnen acht E / A-Ports.

Da I²C verwendet wird, können bis zu acht von ihnen mit denselben zwei I²C-Pins verbunden werden, sodass Sie bis zu 64 I / O-Pins erhalten.

Adafruit hat eine Anleitung zur Verwendung des MCP23008 (oder MCP23016, der 16-Port-Version) mit dem Raspberry Pi. Und sie haben eine Python-Bibliothek .

Craig
quelle
5

Laut diesem Beitrag sollten Sie in der Lage sein, 4 zusätzliche GPIO-Pins zu bekommen, aber es erfordert etwas Löten.

Werner Kvalem Vesterås
quelle
4

Abhängig von Geschwindigkeit und Entfernung zu gesteuerten / steuernden Geräten können Sie den DS2408 an die 1-Wire- Schnittstelle anschließen.

Jeder Chip bietet acht E / A-Kanäle. Sie können ... viele von ihnen anhängen. Möglicherweise Hunderte. Diese werden von der Bibliothek nicht unterstützt. Sobald Sie jedoch die richtigen Module (modprobe) geladen haben, ist der Zugriff so einfach wie das Schreiben der richtigen Werte in Dateien /sys/bus/w1/devices/.

Abgesehen davon bietet der P5-Header (die beiden Lochreihen neben den GPIO-Pins) einige weitere GPIOs, und Sie müssen lediglich einen Header einlöten (und ja, diese werden von jeder Raspberry Pi-GPIO-Bibliothek vollständig unterstützt).

SF.
quelle