Async raspberry pi gpio-Ereignisse in nodejs
Ich mit einer Schaltfläche, um den Raspberry Pi GPIO-Anschlüsse:
Den pi-gpio node-js-Modul ermöglicht zu ziehen, die den aktuellen status aber nicht warten
für einen Staat ändern:
gpio.read(16, function(err, value) {
if(err) throw err;
console.log(value); //The current state of the pin
});
Ist es eine Lösung zu binden Ereignisse asynchron?
In diesem Beispiel wäre dies, wenn die Taste gedrückt wird.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde vorschlagen, mit der das Modul aufgerufen onoff.
Er die Fähigkeit hat, zu beobachten, eine value-Datei zwar nicht die Besteuerung der cpu mit polling-Intervall.
Machte ich eine kleine test-app mit node.js ausprobieren, leds und buttons mit es, Sie können check it out hier.
leider gibt es kein Ereignis generiert, wenn mithilfe der hardware-GPIO. Sie können ein Ereignis erstellen, indem Sie mit einem emitter und
setInterval
erstellen einen timer, der überprüft den status jeder so oft und dann sendet ein event aus, um Ihre Anwendung.Können Sie die Melodie des Timers zu Ihren Anforderungen. Ich denke, 50ms ist eine gute Zahl, da es nicht möglich ist für das menschliche Auge erkennt den Unterschied, wenn es schneller ist.
Ich kam gerade über diese modulle
https://github.com/EnotionZ/GpiO
Ich nicht sah in der Tiefe aber scheint es nutzt die setInterval-Methode, in den hintergrund.
Als beiseite, es ist ein Projekt, das sehr ähnlich node.js (aber viel mehr cut-down) genannt Espruino.
Läuft auf Raspberry Pi (und viele low-power-Arme-mikrocontroller zu), unterstützt HTTP, und hat eine Funktion namens setWatch verhält sich in genau der Weise, die Sie benötigen.