PHP GPIO Script

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    ich will eine Website Programmieren, auf der die Tasten w a s d abgebildet sind (so wie auf Tastatur).
    Wenn man jetzt z.B. die W_Taste drückt, soll sich die Grafik dieser ändern und ein GPIO port (über Shell) aktiviert werden und wenn man W loslässt wieder deaktiviert, das selbe für A,S und D.

    Ist das möglich? Wenn ja kann mir bitte jemand helfen, evtl. Link zu Tutorial, Sourcecode, etc.

    Die GPIOs will ich ansteuern in dem ich in die jeweilige Datei 1 oder 0 schreibe.
    also echo "1" > GPIO...


    Ein "Gefällt mir" oder eine Bewertung wäre nett. :danke_ATDE:

    Support per [PM]

    Einmal editiert, zuletzt von ProfDrFisch (22. Januar 2014 um 20:23)

  • Hallo,

    ich würde so vorgehen:
    Als erstes erstellen des/der Python Script(e).
    Danach eine html Seite, welche per ajax/jquery eine PHP seite aufruft. Diese PHP seite führt dann das Python Script z.B. über shell_exec() aus.

    Wie gut kennst du dich mit der Programmierung aus bzw. reichen diese Infos?

    LG
    mlt

  • Danke für die Antwort,
    aber mit Pyhton kenne ich mich gar nicht aus, ich steuer die Pins über echo "1" > gpio3/value bzw. eine Shelldatei in der die Befehle stehen.
    Die PHP Seite würde ich über Apache2 laufen lassen. Mir geht es halt darum wenn W, A, S, oder D gedrückt werden ein Script ausgeführt wird und wenn man die Taste wieder loslässt ein anderes.


    Ein "Gefällt mir" oder eine Bewertung wäre nett. :danke_ATDE:

    Support per [PM]

  • Danke für eure antworten,
    allerdings habe ich mir überlegt ich könnte es viel leichter machen, indem ich eine Schaltfläche
    in PHP programmiere und wenn dies gedrückt wird ein Befehl in der Konsole ausgeführt wird (über shell_exec(command)). Nur habe ich das Problem das ich mich nicht mit Web-Programierung auskenne und nicht weiß, wie ich einen solchen Button programmieren kann, es wäre nett, wenn mir jemand den Script für einen Button mit dieser Funktion schreiben könnte. (Es würde der Script für den Button reichen, es muss keine ganze Seite sein.)


    Ein "Gefällt mir" oder eine Bewertung wäre nett. :danke_ATDE:

    Support per [PM]

  • Hi,
    du kannst in PHP nicht auf Tastatureingaben reagieren, dies musst du auf der Seite mit javascript realisieren.
    Füge den den Head-Bereich der Seite folgenden Code ein:

    Beachte das ich zum senden des Ajax-Befehls jquery im beispiel verwendet habe. jQuery musst du dann natürlich auch einbinden.

    Das Beispiel sendet dir beim drücken und loslassen der Tasten die benötigten Daten an ein PHP-Skript "handlekey.php"
    Dort kannst du sie dann entsprechend weiterverarbeiten



    Das "Highlighten" der Buttons kannst auch mit jQuery ganz einfach machen:
    Zuerst den Buttons:
    <span id="key-W" style="background: darkred; color: #fff;">W ist aus</span><br />
    <span id="key-A" style="background: darkred; color: #fff;">A ist aus</span><br />
    usw

    Um jetzt den Status zu verändern füge einfach in meinem vorherigen beispiel noch folgende Zeilen in der Funktion submitKey ein (nach der Switch-Anweisung)

    Code
    if(state == 'up') {
        $('#key-'+keyName).html(keyName+' ist aus').css({background: 'darkred'});
    }
    else {
        $('#key-'+keyName).html(keyName+' ist an').css({background: 'darkgreen});
    }

    Einmal editiert, zuletzt von Joogie (25. Januar 2014 um 14:15)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!