Jak mogę korzystać z większej liczby portów GPIO na Raspberry Pi?

15

Obecnie planuję projekt kursu w szkole, który wymaga korzystania z Raspberry Pi - jednak martwię się, że nie będę mieć wystarczającej liczby złącz GPIO dla wejść i wyjść potrzebnych do projektu. Czego mogę użyć, aby zwiększyć liczbę złączy, których mogę używać?

Jeśli to możliwe, w jaki sposób mógłbym korzystać z nowych łączników przy użyciu biblioteki RPI.GPIO w Pythonie?

ChaoticPanda
źródło
możliwy duplikat zdobycia więcej niż 26 pinów GPIO
Moshe Katz

Odpowiedzi:

13

Inną opcją byłoby użycie ekspandera portów, aby uzyskać dodatkowe porty I / O. Na przykład MCP23008 może łączyć się przez I²C (używa tylko dwóch pinów) i daje osiem portów I / O.

Ponieważ wykorzystuje I²C, do ośmiu z nich można podłączyć do tych samych dwóch styków I²C, co daje do 64 styków we / wy.

Adafruit ma samouczek na temat korzystania z MCP23008 (lub MCP23016, wersja 16 portów) z Raspberry Pi. I mają bibliotekę Python .

Craig
źródło
5

Zgodnie z tym postem powinieneś być w stanie zdobyć 4 dodatkowe piny GPIO, ale wymaga to trochę lutowania.

Werner Kvalem Vesterås
źródło
4

W zależności od prędkości i odległości do kontrolowanych / sterujących urządzeń można podłączyć DS2408 do interfejsu 1-Wire .

Każdy układ zapewnia osiem kanałów we / wy. Możesz dołączyć ... wiele z nich. Prawdopodobnie setki. Nie są one obsługiwane przez bibliotekę, ale po załadowaniu odpowiednich modułów (modprobe) dostęp jest tak prosty, jak zapisanie odpowiednich wartości w plikach /sys/bus/w1/devices/.

Poza tym nagłówek P5 (dwa rzędy otworów obok styków GPIO) zapewnia jeszcze kilka GPIO i wystarczy wlutować nagłówek (i tak, są one w pełni obsługiwane przez każdą bibliotekę GPIO Raspberry Pi).

SF.
źródło