Zdobycie ponad 26 pinów GPIO

16

Chciałbym móc wysyłać 75 cyfrowych sygnałów wyjściowych z Raspberry Pi. Ma jednak tylko 26 pinów GPIO. Dokładne odmierzanie czasu nie ma decydującego znaczenia, dopóki wynosi 1 sekundę. Muszę być w stanie włączyć lub wyłączyć wszystkie sygnały w tym samym czasie, aby pleksowanie nie działało.

Wyobrażam sobie, że coś takiego byłoby możliwe z innym modułem podłączonym przez USB, ale zastanawiałem się, czy byłby łatwiejszy sposób na zrobienie tego przy użyciu istniejącego sprzętu?

Szufelka
źródło
3
Pamiętaj tylko, że chociaż jest 26 pinów, tylko 17 z nich może być wykorzystanych do GPIO, a pozostałe są uziemieniem / mocą.
Seanny123

Odpowiedzi:

6

Możliwe jest rozszerzenie do 64 dodatkowych portów GPIO przy użyciu niektórych układów MCP23008 podłączonych przez interfejs I2C. Każde z nich dodaje 8 GPIO i do ośmiu można podłączyć przez I2C. Ponieważ potrzebujesz 75, przypuszczam, że idziesz z większym bratem MCP23008 MCP23017, który ma 16 portów GPIO. Nie można mieszać obu i uzyskać ponad 128, ponieważ limit 8 na magistrali I2C stosuje się do obu razem, ponieważ adresy się pokrywają.

Aby ułatwić dostęp do magistrali I2C, można użyć interfejsu API I2C-Python z Quick2Wire . Quick2Wire ma również post na chipach .

Mojżesz
źródło
Miałem też szczęście z układami PCF8574.
Kolban
5

Przyjrzeć się tej odpowiedzi gdzie MAX7219 , MAX7221 , MAX6950 , MAX6951 i TLC5940 omówiono jako opcja dla podobnego problemu.

avra
źródło
3

Możesz także użyć IO Pi firmy AB Electronics UK, która jest oparta na MCP23017 . IO Pi pozwala na 32 cyfrowe wejścia / wyjścia i można sterować z portu I2C malina PI. Możesz także zmieścić do 4 z nich na jednym Pi i maksymalnie 128 pinów. Zasadniczo są to dwa MCP23017 na jednej płycie. Chociaż tańsze jest użycie dwóch MCP23017 w przeciwieństwie do IO Pi .


źródło
1

Dostępny jest teraz „ moduł obliczeniowy ” Raspberry Pi, który (i odpowiednia płytka rozwojowa, jeśli chcesz ułatwić sobie pracę) oferuje WSZYSTKIE 120 styków GPIO BCM2835! Istnieją jednak inne rzeczy, których nie ma, które mogą mieć wpływ na to, czy chcesz go użyć ...

SlySven
źródło
1

Wiem, że jest to bardzo stary post, ale pierwszy z nich znajduje się w Google podczas wyszukiwania dostępu do wielu pinów gpio ... a wyniki nie zawierają nowej funkcji, która może być najłatwiejsza:

więc dla innych wyszukiwarek to nowe oprogramowanie może być tym, czego szukasz:

sudo apt install usbbootgui

(opisane bardziej szczegółowo na https://www.raspberrypi.org/blog/gpio-expander/ )

umożliwiając dostęp do GPIO wielu ciast przez USB. Sądzę, że jest ograniczona liczbą posiadanych portów USB.

Użyję tego osobiście do stworzenia czytnika eprom do zrzucania starych kaset z grami. (dlatego tego szukałem)

Graham Toal
źródło
0

Użyj rejestru przesuwnego. https://www.sparkfun.com/products/10680 Są tanie i możesz umieścić tyle, ile chcesz w szeregu. Niektóre mają mechanizm włączania / blokowania wyjścia, który pozwala na przejście w stan trójstanowy i zmianę jednocześnie.

Ottar L. Osen
źródło