Blink without delay mit while......

hat wenig damit zu tun jemandem zu helfen

Ja ok.

Dass du einer der letzten sein wirst der merkt, dass du "beratungsresistent" bist, gehört leider zu dem Syndrom dazu. (Sorry)

Also, so pädagogisch wie es mir möglich ist:

  • Du hast dir BlinkWithoutDelay angesehen?
  • Warum ist da kein [b]while[/b] drin?
  • Wie lange brauchen 1000 loop-Durchläufe BlinkWithoutDelay?
  • Könnte man BlinkWithoutDelay um eine Tasterabfrage ergänzen?
    ( Beispiel: gedrückt --> schnell blinken, Taster offen --> langsam blinken )
  • Wie schnell würde der Sketch auf den Taster reagieren? (Wenn das langsame Blinken extrem langsam ist)
  • Könnte man den Sketch noch weiter ergänzen, ohne das vorhandene irgendwo mitten drin (vorzeitiger Abbruch einer while Schleife, weil ... ) ändern zu müssen?

Ein anderes Thema was hier schon diskutiert wurde und wo du deine Resistenz bewiesen hast:

   if (time2 < time1 + interval) {

ist etwas anderes als

   if (time2 - time1 < interval) {

auch wenn du mathematisch nachweisen kannst, dass beide Ausdrücke äquivalent sind.
Bei deinem mathematischen Beweis lässt du nämlich außer acht, dass diese Variablen keine natürlichen oder rationalen Zahlen sind, sondern nur einen begrenzten Wertebereich haben und überlaufen.

Die zweite Variante funktioniert übrigens auch während eines solchen Überlaufs.
Da die erste Variante keinerlei Vorteil hat, ist es einfach falsch, es so hinzuschreiben, auch wenn das Problem nur gaaanz selten auftreten wird.
Gibt auch Leute die begründen, dass Fehler, die selten auftreten, schlimmer sind als solche die sofort auffallen.