Forum: Mikrocontroller und Digitale Elektronik Grasshopper GPIO-Problem


von Christian K. (flyingcat)


Lesenswert?

Hallo zusammen,

ich habe ein Problem mit dem Grasshopper. Mein vorläufiges Ziel ist es, 
den Status des Tasters (SW1) über GPIO auszulesen. Laut Schaltplan hängt 
SW1 an PA31.

Der Versuch war also:

mknod /dev/gpio0 c 254 0

mkdir /config/gpio/gpio0
cd /config/gpio/gpio0
echo 0 > gpio_id
echo 0x80000000 > pin_mask
echo 0x00000000 > oe_mask
echo 1 > enabled

Das funktioniert aber nicht - es erfolgt auch keine Ausgabe. Setze ich 
die pin_mask aber auf

echo 0x3f > pin_mask

und Rest wie gehabt, kommt die Bestätigung ("created gpio0 
(port0/0x0000003f) as (254:0)").

Ich habe auch andere Pin-Masken ausprobiert (mit Reboots dazwischen) - 
0xffffffff geht nicht, 0xffff geht nicht, 0x3f geht.

Kann mir jemand helfen?

Besten Dank und viele Grüße,
flyingcat

von Werner B. (werner-b)


Lesenswert?

Das Bit31 an Port A ist für den Taster im Linux Eventsystem reserviert. 
Dann kommt GPIO nicht ran.
Da musst du vorher im Board-Setup den Taster desaktivieren und den 
Kernel neu übersetzen. Wie das geht hängt von deiner Buildrootumgebung 
ab. Da gibt es inzwischen mehrerer für den Grasshopper.

von Christian K. (flyingcat)


Lesenswert?

Werner B. wrote:
> Das Bit31 an Port A ist für den Taster im Linux Eventsystem reserviert.
> Dann kommt GPIO nicht ran.
> Da musst du vorher im Board-Setup den Taster desaktivieren und den
> Kernel neu übersetzen. Wie das geht hängt von deiner Buildrootumgebung
> ab. Da gibt es inzwischen mehrerer für den Grasshopper.

Das erklärt es! Besten Dank für die Info.

Viele Grüße,
flyingcat

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.