Kommentare zur Verwendung von GPIO

 

Achtung !!!
Seien Sie vorsichtig, wenn Sie mit GPIO .
Es mag keine statische Elektrizität, die durch synthetische Kleidung gesammelt wird.



Nachdem das neue SYSFS GPIO-Steuerungsschema mit dem Namen gpio-sunxi auf dem Orange Pi gpio-sunxi , wurde gpio-sunxi , dass das Thema GPIO im Zusammenhang mit der Erstellung von FRN Gateways genauer behandelt werden muss.


Jetzt ist es schwierig, sich auf ein Standard- GPIO Schema zu verlassen, weil Auf Ihrem speziellen Computer (Board) mit dem speziell darauf installierten Betriebssystem unterscheidet sich dieses Schema möglicherweise von den Beschreibungen aus dem Internet, einschließlich und im folgenden Text.


Vielen Dank natürlich an die Macher der Hard- und Software für die große Auswahl und die günstigen Preise. Man muss jedoch irgendwie lernen, diese Vielfalt zu verstehen.


Also: um die Situation mit GPIO auf einem bestimmten Computer (Board) zu klären, habe wurd einen "Funkemulator" nach einem wunderbaren Schema mit kleinen Modifikationen gelötet:
http://alterfrn.ucoz.ru/pics/PTT_COS_emu_scheme.jpg

mit einem so unprätentiösen Aussehen:
http://alterfrn.ucoz.ru/pics/PTT_COS_emu_view.jpg
und mit denen Sie sicher und sicher experimentieren können.
Es ist ganz einfach: Wenn der FRN Client den Radiosender für die Übertragung FRN möchte, FRN die LED auf, und wenn Sie den Empfang eines Signals aus der Luft emulieren möchten, müssen Sie die Taste drücken.



Beispiel 1. Raspberry Pi Modell B (Rev. 1) mit nativem Raspbian - Ich habe nur keine anderen Raspberry Boards.

Wir suchen in der Dokumentation auf unserer Platine nach der Pin-Belegung des Steckverbinders:
http://alterfrn.ucoz.ru/pics/Raspberry-Pi-GPIO-pinouts.png
Meine Option ist auf der linken Seite. Wir verbinden die LED mit dem GPIO4 Port (Pin 7) und überprüfen die Leistung mit unseren eigenen Händen.

Ein Beispiel für das Einschalten eines Radiosenders zur Übertragung (LED-EIN):

Code

sudo echo 4 > /sys/class/gpio/export
sudo echo out > /sys/class/gpio/gpio4/direction
sudo echo 1 > /sys/class/gpio/gpio4/value


Die LED leuchtet auf. Wir löschen es und trennen uns 

Code

sudo echo 0 > /sys/class/gpio/gpio4/value
sudo echo in > /sys/class/gpio/gpio4/direction
sudo echo 4 > /sys/class/gpio/unexport


Die LED ist aus. Großartig. Verbinden Sie nun den Button mit demselben Port und betrachten Sie dessen aktuellen Zustand:

Code

sudo echo 4 > /sys/class/gpio/export
sudo echo in > /sys/class/gpio/gpio4/direction
sudo cat /sys/class/gpio/gpio4/value
sudo echo 4 > /sys/class/gpio/unexport


Je nach verwendetem PULLUP ( PULLUP oder PULLDOWN ) sollte 0 oder 1 zurückgegeben werden, wenn eine Verbindung besteht. Wenn Sie die Taste gedrückt halten und den Lesevorgang wiederholen, sollte der Rückgabewert umgekehrt werden.

Wenn alles wie oben beschrieben abläuft, bedeutet dies, dass der Port fehlerfrei und nicht mit anderen Aufgaben beschäftigt ist und daher für die Verwendung mit dem FRN Client geeignet ist.

Im Bild und in der Abbildung überprüfen wir den GPIO17 Port (Pin 11). Er arbeitet auch. Alles entsprach der Dokumentation. Glück gehabt.

Infolgedessen wurde ein spezielles Steuerungsschema für den Radiosender und dessen Einstellungen angezeigt:

 

http://alterfrn.ucoz.ru/pics/RaspberryPi_pins_for_FRN.jpg

 

Bild1 Schaltung

 

Bild2 Schaltung

Bild3 Schaltung

 

 

 


Beispiel 2. Cubieboard2 mit einer alten, gebürtigen Cubian Base-R5 - wurde für einige Zeit von einem Kollegen für Experimente genommen.

Dieses Bundle hatte ein GPIO-SYSFS Port-Benennungsschema mit einer expliziten Angabe des Allwinner A20 Prozessor-Port-Multiplexers. Ich glaube, dies ist eine der Modifikationen von GPIO-SYSFS für Allwinner Prozessoren, ein Beispiel für eine Flucht der Fantasie von Entwicklern. Bevor ich davon überzeugt war, dass das Dokument die richtige Entsprechung zwischen der Portnummer und dem Namen enthält, musste ich den Port manuell nach Nummer "exportieren", z. B. mit dem Befehl " sudo echo 17 > /sys/class/gpio/export " und anschließend im Verzeichnis /sys/class/gpio Schau mit deinen Augen, welchen genauen SYSFS Namen dieser Port hat.

 http://alterfrn.ucoz.ru/pics/Cubian_pins_for_FRN.jpg
Alles hat funktioniert.



Beispiel 3. Orange Pi .

Hier musste ich mich mit einer Vielzahl treffen. Ich bin GPIO-SYSFS Optionen mit Unterstützung für das "klassische" GPIO-SYSFS , ähnlich wie in Beispiel 1 über Raspberry Pi . Immer noch auf Optionen mit der "neuen" (?) Version von GPIO-SYSFS .

Um Ihre Option zu verstehen, müssen Sie in SYSFS Befehl durch die Augen des GPIO SYSFS :

Code

sudo ls -1 /sys/class | grep ^gpio


Wenn das gpio Verzeichnis gpio , ist dies Beispiel 1 oder 2, das klassische Linux Schema, das wir herkömmlicherweise als " LINUX Schema" bezeichnen.
Wenn das Verzeichnis gpio_sw , ist dies die gleiche Art von "neuer" Option für Allwinner . Nennen wir sie " SUNXI ".
Auf einem Gerät desselben Typs stieß ich je nach Linux auf beide Optionen.
Wird nichts gefunden, wird die GPIO Unterstützung nicht in den Kernel geladen. Dann versuchen wir, sie mit dem Befehl " sudo modprobe gpio-sunxi " zu sudo modprobe gpio-sunxi und das verfügbare GPIO Schema erneut zu überprüfen.


Ein Beispiel für das Einschalten eines Radiosenders zur Übertragung (LED-Zündung) nach dem SUNXI Schema:

Code

sudo echo 1 > /sys/class/gpio_sw/PA9/cfg
sudo echo 1 > /sys/class/gpio_sw/PA9/data


Ausschalten des Radiosenders (Löschen der LED) gemäß dem SUNXI Schema:

Code

sudo echo 0 > /sys/class/gpio_sw/PA9/data
sudo echo 0 > /sys/class/gpio_sw/PA9/cfg


Auslesen des Carrier-Status vom Radiosender (Button-Status) nach dem SUNXI Schema:

Code

sudo echo 0 > /sys/class/gpio_sw/PA10/cfg
sudo cat /sys/class/gpio_sw/PA10/data


Da sich diese Steuerungsschemata im AlterFRN Revisionsclient 4457+ unterscheiden , wurde der Parameter GpioScheme (Abschnitt 8.14) mit gültigen LINUX (Standard) und SUNXI Abschnitt [System] SUNXI :

Code

[System]
GpioScheme=LINUX
#GpioScheme=SUNXI

 

 


Orange Pi PC Plus mit Stiften
http://alterfrn.ucoz.ru/pics/OrangePi_H3-pinout.png

kann abhängig vom verwendeten GPIO Schema mit den Einstellungen verbunden werden:

 http://alterfrn.ucoz.ru/pics/OrangePi_pins_for_FRN.jpg

 

 

 

 

zum Runterladen

Kommentare zur Verwendung von GPIO.PDF