Do przetestowania pracy z portem GPIO wykorzystałem płytkę testową KAmodLED8. Na płytce znajduje się układ 74LVC541 będący 8-krotnym buforem oraz 8 diod LED. Rozwiązanie takie nie powoduje obciążenia portów procesora zawartego na płytce Raspberry Pi tak, jak by to miało miejsce w przypadku bezpośredniego dołączenia diod LED.
Rozmieszczenie sygnałów na złączu P1 komputerka Raspberry Pi zostało przedstawione na rysunku.
Moduł został podłączony do złącza P1 według schematu przedstawionego poniżej.
Do podłączenia wykorzystano przewody ze specjalnie zarobionymi końcówkami. Widok podłączonego modułu został przedstawiony na poniższym rysunku.
Połączenia dokonano w taki sposób, aby interfejsy SPI, I2C oraz UART pozostawić do wykorzystania dla innych zastosowań. Na rysunku złącza są to sygnały oznaczone kolorem niebieskim.
Aby skorzystać z portu GPIO potrzebny nam będzie pakiet wiringPi który z poziomu linii komend pozwoli nam sterować kierunkiem i stanami na poszczególnych wyjściach GPIO. Należy więc go sobie ściągnąć i skompilować. Pobieramy go ze strony https://projects.drogon.net/raspberry-pi/wiringpi/ . Następnie rozpakowujemy w swoim katalogu domowym.
tar xfz wiringPi.tgz
Powinniśmy też zainstalować bibliotekę obsługującą standard I2C gdyż może wystąpić problem z kompilacją pakietu wiringPi. W tym celu wydajemy komendę:
sudo apt-get install libi2c-dev
Aby skompilować bibliotekę wydajemy kolejne polecenia:
cd
wiringPi/wiringPi
make
sudo make install
cd ../gpio
make
Aby wysterować linię wyjściową GPIO powinniśmy wydać polecenia:
sudo ./gpio -g mode 4 out
gdzie 4 oznacza numer linii portu GPIO zaś „out oznacza, że linię konfigurujemy jako wyjście. W celu ustawienia stanu 1 na konfigurowanej linii GPIO wpisujemy:
sudo ./gpio -g write 4 1
gdzie 4 oznacza numer portu GPIO zaś 1 oznacza stan logiczny na danym wyjściu. Niekiedy zachodzi potrzeba odczytania linii GPIO. Po skonfigurowaniu jej jako wejścia (parametr in) odczytujemy wydając z linii komend polecenie:
sudo ./gpio -g read 4