Dostęp do portów przez interfejs JTAG
Do płytek MSP430 Launchpad, Stellaris Launchpad i STM32F4 Discovery
możemy się podłączyć debugerem poprzez interfejs JTAG. Debuger
pozwala na zapis i odczyt z dowolnych adresów. Porty
wejścia/wyjścia są częscią przestrzeni adresowej tych
procesorów więc zapisując pod odpowiednie adresy możemy
czytać lub pisać dane z/do portu. Potrzebne adresy
można znaleźć w dokumentacji procesora, np. dla procesora
MSP430G2553 (ten w MSP430 Launchpad) tabela adresów jest
na stronach 19 i 20 dokumentacji procesora, a bardziej
obszerny opis portów wejścia/wyjścia jest w opisie
architektury MSP430G2.
Wypróbować z wybranym urządzeniem.
GPIO dla Raspberry Pi
Linie wejscia/wyjścia Raspberry Pi są dostępne z poziomu
użytkownika poprzez virtualny filesystem. Zanim użyjemy
linię musimy ją najpierw zarezerwować dla użytkownika
(to może sie nie udać jeśli jądro już używa tą linię).
Robimy to wpisując numer lini do '/sys/class/gpio/export',
np. dla linii 18:
echo 18 > /sys/class/gpio/export
Teraz pojawi się katalog '/sys/class/gpio/gpio18' zawierający
pliki dla tej linii. Np.
cat /sys/class/gpio/gpio18/value
daje bieżącą wartość na linii.
Domyślnie linie są wejściami. Aby zmienić je na
wyjście musimy wpisać 'out' do pliku 'direction':
echo out > /sys/class/gpio/gpio18/direction
Teraz możemy zmienić wartość pisząc do "value"
echo 1 > /sys/class/gpio/gpio18/value
Wypróbować to z wybranym urządzeniem.