elektronik:nodemcu_esp8266_erste_schritte
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
elektronik:nodemcu_esp8266_erste_schritte [2019/01/25 00:38] – [Genereller Ablauf] gpipperr | elektronik:nodemcu_esp8266_erste_schritte [2019/01/25 15:40] – [Impluse auswerten] gpipperr | ||
---|---|---|---|
Zeile 725: | Zeile 725: | ||
---- | ---- | ||
+ | |||
+ | ==== Impluse auswerten ==== | ||
+ | |||
+ | Flowmeter angeschloßen | ||
+ | |||
+ | * Schwarz and GND | ||
+ | * Rot and 3,3V | ||
+ | * Gelb an D1 | ||
+ | |||
+ | |||
+ | D0 wird nicht unterstützt für Interrupts! | ||
+ | |||
+ | |||
+ | Impulse pro Minute und Sekunde zählen: | ||
+ | <code lua> | ||
+ | -- Welcher GPIO Port | ||
+ | trigger_pin=1 | ||
+ | |||
+ | -- Zähler | ||
+ | min_time=0 | ||
+ | pulszaehler=0 | ||
+ | pulszaehler_min=0 | ||
+ | |||
+ | |||
+ | ------------------------------------------- | ||
+ | -- Was soll aufgerufen werden | ||
+ | function intPin1(level, | ||
+ | |||
+ | pulszaehler=pulszaehler+1 | ||
+ | | ||
+ | end | ||
+ | |||
+ | ------------------------------------------- | ||
+ | -- Trigger Mode setzen | ||
+ | gpio.mode(trigger_pin, | ||
+ | |||
+ | ------------------------------------------- | ||
+ | -- Interrupt Handler definieren | ||
+ | -- für fallende flanke | ||
+ | gpio.trig(trigger_pin, | ||
+ | |||
+ | ------------------------------------------- | ||
+ | -- je Sekunde den aktuellen Status ausgeben | ||
+ | sectimer =tmr.create() | ||
+ | sectimer: | ||
+ | |||
+ | if min_time == 59 then | ||
+ | min_time=0 | ||
+ | print(string.format(' | ||
+ | pulszaehler_min=0 | ||
+ | -- hier wird der gezählte Werte nun an die Datenbank übergeben | ||
+ | -- send data aufrufen | ||
+ | -- möglichst in einen neuen Thread !! | ||
+ | else | ||
+ | min_time=min_time+1 | ||
+ | end | ||
+ | |||
+ | pulszaehler_min=pulszaehler_min+pulszaehler | ||
+ | print(string.format(' | ||
+ | pulszaehler=0 | ||
+ | | ||
+ | | ||
+ | end) | ||
+ | |||
+ | sectimer: | ||
+ | |||
+ | ------------------------ | ||
+ | |||
+ | |||
+ | </ | ||
+ | |||
+ | So etwas ist evtl. besser mit /Lua-RTOS umsetzbar => https:// | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
==== Hilfsfunktionen==== | ==== Hilfsfunktionen==== |
elektronik/nodemcu_esp8266_erste_schritte.txt · Zuletzt geändert: 2021/12/12 15:34 von gpipperr