Wenn ich nun an meinem Encoder drehe, wird pro Schritt 2 weiter gezählt.
Wenn ich ein klein wenig nach links drehe (noch kein Schritt), dann wird nur eins abgezogen. Ansonsten macht der immer 2...
Ich verstehe nicht wieso Du das so kompliziert machst.
Zuerst mal kontrolliere wieviele mechanische schritte und wieviele elektrische Schritte der Encoder hat.
Du willst nur den Couter erhoehen oder erniedrigen?
als ich mit einem Dreh-Encoder gespielt habe,
habe ich die Werte über die serielle Konsole ausgegeben.
Dabei machte die Baudrate einen Unterschied im Ergebnis.
Vielleicht versuchst Du mal etwas in diese Richtung bei I2C Geschwindigkeit.
Ja, das war auch mein erster Test, leider auch hier in allen Einstellungen das gleiche Ergebnis. Es ist auch egal, wie schnell oder langsam ich den encoder drehe, ich bekomme immer nur gerade Zahlen.
Oh Gott, da habe ich ja noch gar nicht dran gedacht!
Kann es sein das der Encoder so exakt prellt? Es ist ja wirklich immer so das die Schritte doppelt zählen - deshalb bin ich von einem Softwarefehler ausgegangen...
Kann ich meinen encoder per progammierung entprellen?
Ich forsche und habe folgendes rausgefunden:
Der Encoder rastet nur jeden zweiten Schritt mechanisch ein. Das ist ja gemein.
Ich werde also einfach ein conter 2 = counter /2; einbauen und mich freuen über den tollen Code (es sei denn einer von Euch hat noch eine blendende Idee)