Benutzer-Werkzeuge

Webseiten-Werkzeuge


elektronik:nodemcu_esp8266_erste_schritte

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
elektronik:nodemcu_esp8266_erste_schritte [2019/01/25 20:16] – [Erste Schritte mit dem ESP8266 / NodeMCU Board mit Lua] gpipperrelektronik:nodemcu_esp8266_erste_schritte [2019/01/25 20:23] – [Impluse auswerten] gpipperr
Zeile 726: Zeile 726:
 ---- ----
  
-==== 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, internalCountMs) 
-  
-    pulszaehler=pulszaehler+1 
-     
-end 
- 
-------------------------------------------- 
--- Trigger Mode setzen 
-gpio.mode(trigger_pin,gpio.INT) 
- 
-------------------------------------------- 
--- Interrupt Handler definieren 
--- für fallende flanke 
-gpio.trig(trigger_pin, "down", intPin1) 
- 
-------------------------------------------- 
--- je Sekunde den aktuellen Status ausgeben 
-sectimer =tmr.create() 
-sectimer:register(1000, tmr.ALARM_AUTO, function() 
- 
-  if min_time == 59 then 
-    min_time=0 
-    print(string.format('Stand nach einer Minute :: %05i ', pulszaehler_min )) 
-    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('Stand in dieser %02i Sekunde :: %05i  :: Sum :: %05i',min_time, pulszaehler,pulszaehler_min) ) 
-  pulszaehler=0  
-   
-   
-end) 
-  
-sectimer:start() 
- 
------------------------- 
- 
- 
-</code> 
- 
-So etwas ist evtl. besser mit /Lua-RTOS umsetzbar => https://github.com/whitecatboard/Lua-RTOS-ESP32 , da ja hier eigentlich mehrer Threads notwendig sind um die Daten zu versenden und gleichzeitig richtig zu zählen. 
- 
- 
----- 
  
  
elektronik/nodemcu_esp8266_erste_schritte.txt · Zuletzt geändert: 2021/12/12 15:34 von gpipperr