GPIO steuern in C/C++

  • Gordon hat hingeworfen. Seine Library WiringPi wird nicht mehr weiter veröffentlicht und er bezeichnet sie als "deprecated". Was nun? Gordon verweist auf "Andere GPIO-Libraries", aber ich sehe keine, die aktiv entwickelt wird.


    Ich dachte dann an /dev/gpiomem, aber ich habe nichts darüber gefunden, wie man mit "ioctl" damit einen Pin ansteuert.


    Es gibt jetzt auch noch libgpiod, das mit Hilfe von /dev/gpiochip0 , 1 , 2 arbeiten soll, aber seltsamerweise sind in Buster dort keine Pins hinterlegt. das Programm gpioinfo liefert nur lauter Zeilen mit unnamed und unused.


    Wie steuert man nun GPIUO-Pins in C/C++? Hat jemand eine Beschreibbung oder ein Beispiel wie man mit gpiomem arbeitet? Oder weiß jemand, ob der "Fehler" in gpiochip0 bald behoben ist?

  • Hallo,

    vielleicht ist ein kleines Beispiel hilfreich?

    Nun, es ist aber in Assembler programmiert.

    Die Kommentare dürften aber ausreichen.

    Einfach ausführbar machen und an den GPIO-4 bzw. GPIO-17

    mit einem 10 K Widerstand und einer super hellen LED ausführen.

    Anode an GPIO.

    Kann sein das für die Nutzung root Rechte nötig sind ?

    Habe ich aber vergessen.

    Viel Spaß

    RE


    PS

    Einstellung für Pi4B .word 0xFE200000 @ Pi 4 B @ = base + gpio controller


    C mag ich nicht so!


    Ich kann und werde keine Verantwortung für Schäden übernehmen!

    forum-raspberrypi.de/attachment/23522/forum-raspberrypi.de/attachment/23522/

  • Ich gebe mich geschlagen ;) Da der Aufwand um direkt über /dev/mem und/oder /dev/memgpio auf die Pins zuzugreifen doch beträchtlich ist, werde ich pigpio verwenden.


    Danke nochmals Bernd für den Hinweis!

  • Moin Canis,


    ich habe eine Zeit lang mich mit /sys/bus/gpio/xxx  rum geschlagen. Es ist sehr mühsam.


    Dann viel Spass dabei.


    73 de Bernd


    Achja, wenn du mit diesem Thema durch bist, dann, bitte, als erledigt markieren. Das geht oben bei "Thema bearbeiten". Danke!

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"

    Vielleicht trifft man sich in der RPi-Plauderecke.