Ich versuche gerade mit meinem espruino in java skript einen 4x4x4- LED- cube anzusteuern. dabei möchte (nur so zum spaß) eine toggle-fnktion mit automatischer zeitänderung schreiben. soll heißen: 5x alle 200ms blinken, dann umschalten und nur mehr alle 500ms 5x blinken usw.. die funktion toggle funktioniert intern an sich d.h. "anz" & "time" werden intern erhöht und auch wieder rückgesetzt aber in der "setinterval"-funktion wird "time" nicht geändert und behält immer seinen anfangswert. weiß jemand was ich falsch mache? schon mal danke im voraus, lg vanii
setInterval(toggle, time) erzeugt einen 'timer' der die Funktion toggle alle 'time' msek aufruft. Wenn dieses callback einmal definiert ist haben spätere Änderungen der Variablen time keine Auswirkung mehr. Um die Zeit zu ändern musst du mit changeInterval die gespeicherte Zeit ändern, oder mit clearInterval löschen und neu anlegen. http://www.espruino.com/Flashing+Lights Alternativ könnte man auch den Timer einmalig mit 100msek definieren und dann in toggle() entscheiden ob die LEDs bei jedem 2. oder 5. Aufruf umgeschaltet werden.
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.