Orange PI 2G-IOT | Ein- Ausgänge | GPIO

Das Hardware Interface des
Orange PI 2G-IOT

Die Schnittstellen

Die Macher des Orange PI 2G-IOT legten je zwei serielle und zwei I²C Schnittstellen auf die raspberrykomforme  2×20 polige Stiftleiste.

Beachten Sie die Position von PIN 1 !

Die beiden über /dev/ttys1 bzw. /dev/ttys2 erreichbaren seriellen Schnittstellen lassen sich auch mit Hardwarehandshake (CTS/RTS)  betreiben. Somit können  diese mit geeigneten Schnittstellenbausteinen recht einfach z.B. für einen RS485 Bus verwendet werden.

Zum Download anklicken.

Ein  SPI Bus und eine weitere I²C Schnittstelle(2) sind im Schaltplan vorgesehen, jedoch derzeit nicht verwendbar. Man könnte die PINs dieser Schnittstellen als Ein- oder Ausgang verwenden. Sobald jedoch die im Schaltplan vorgesehenen Schnittstellen von den Entwicklern ins Betriebssystem implementiert werden, könnte es Probleme mit deren Zuordnung geben.Die Massepunkte und Versorgungsspannungen liegen auf den gleichen PIN`s wie auf der Stiftleiste des Rasperry PI.

Initialisieren, konfigurieren und ansprechen lassen sich die PIN’s wie bei Linux üblich, über das Systemfilesystem im Pfad /sys/class/gpio.

Umrechnung der Bezeichnungen in Portnummern

Zur Kennzeichnung der Ports im Schaltplan wurden Buchstaben und Zahlen verwendet.
Für die Buchstaben stehen folgende Zahlenwerte
A=0 | B=32 | C=96
Addiert man zu diesen Wert die in der Bezeichnung folgende Zahl, erhält man die in /sys/class/gpio zu verwendende Portnummer.
Als Bespiel hier die Umrechnung für PIN 7 der Stiftleiste, der mit  GPIO B24 gekennzeichnet ist:
Die korrospondierende Bezeichnung für GPIO B24 im Linux Sys-Filesystem ist  /sys/class/gpio/gpio56. (Berechnet aus 32 (für B) + 24 = 56)

Wie schaltet man z.B. GPIO B24  auf LOW oder HIGH ?

  • Zunächst muß man das Port „mounten“
    GPIO Port B24 an PIN 7 der Stiftleiste wird wie folgt im Filesystem zur Verfügung gestellt:

    echo "56" > /sys/class/gpio/export
  • Ein- oder Ausgang?
    Und nun wird GPIO Port B24 als Ausgang definiert

    echo "out" > /sys/class/gpio/gpio56/direction
  • Den Ausgangspegel definieren
    HIGH:

    echo "1" > /sys/class/gpio/gpio56/value

    LOW:

    echo "0" > /sys/class/gpio/gpio56/value
  • Invertieren der Logik
    Manchmal ist es notwendig, den Ausgangspegel zu invertieren.
    Das funktioniert dann wie folgt:

    echo "1" /sys/class/gpio/gpio56/active_low

    Wie verwendet man z.B. GPIO B24  als Eingang ?

    • Zunächst muß man das Port „mounten“
      GPIO Port B24 an PIN 7 der Stiftleiste wird wie folgt im Filesystem zur Verfügung gestellt:

      echo "56" > /sys/class/gpio/export
    • Ein- oder Ausgang?
      Und nun wird GPIO Port B24 als Eingang definiert

      echo "in" > /sys/class/gpio/gpio56/direction
    • Den Eingangspegel auslesen
      cat /sys/class/gpio/gpio56/value

Der geheimnisvolle PIN 12

Der Versuch mit GPIO B5 zu arbeiten wird scheitern. Das Betriebssystem hat dieses Port als Ausgang geschaltet und verwendet dies zur USB Kontrolle.

Port Verwendung prüfen

cat /sys/kernel/debug/gpio/

Hiermit lässt sich der Zustand der verwendeten Ports ermitteln.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.