[Solved] Werte mit Encoder ändern

Hallo,

das Problem, dass das Ändern der Werte nicht richtig funktioniert hat, habe ich nun selbst in den Griff bekommen.
Das Problem ist einfach, dass wenn ich oldEncoderPos auf 0 setzet, muss ich auch den Wert von myEnc.read() auf 0 setzten, mit myEnc.write(). Außerdem darf ich die geänderte Einerstelle von der Messrate nicht direkt auf die aktuelle Messrate aufaddieren.

Die Delay-Zeit von 500 ms soll zum einen den Taster entprellen und auch verhindern, dass man in den Einstell-Modus gelangt, wenn man versehentlich beim Scrollen den Taster drückt. Da man als Maximale Abtastrate eh nur 1 Sekunde einstellen kann, sollte das Abtasten der Sensoren nicht wirklich davon beeinflusst werden.
Ziel ist es aber, dass das ganze fertige Programm ohne so eine "Bremse" läuft.

Programm- und Benutzerlogik:
Wenn man einfach nur am Encoder dreht, kann man zwischen den einzelnen Seiten umherschalten. Also von den Grundeinstellungen am Anfang bis zum aktuellen Messwert x. Am Ende angekommen, fängt das Menü wieder von vorn an.
Bei den Seiten, die mit einem "+" markiert sind, lassen sich bestimmte Werte ändern.
Wenn der Benutzer auf einer Seite ist, mit änderbaren Werten, muss er für 0,5 Sek. den Taster am Encoder drücken. Dann blinkt der Cursor am jeweiligen Wert und durch drehen am Encoder kann man den Wert erhöhen oder auch verkleinern. Ist man am letzten änderbaren Wert angekommen, drückt man nochmals auf den Taster und man gelangt wieder in den "View-Modus".

Bei den aktuellen Sensorwerten lässt sich nichts ändern. Trotzdem gibt es dort eine kleine Funktion: solange, wie man den Taster drückt, werden anstatt dem aktuellen Wert und dem Mittelwert die Extremwerte angezeigt.

Die geänderten Parameter werden dann weiter im Programm verwendet. Nach einem Reset sind sie halt verloren. In meinem Fall aber nicht tragisch.

Interessant wäre zu wissen, wie solche Menüs bei "professionellen Geräten" aufgebaut sind und funktionieren. Und wie man mein Menü verbessern kann. (1. Schritt: Delay muss raus!)

Gruß
Jan