Guten Morgen.

Hallo mausi_mick,
kannst du mir den Sinn bez. die Idee erklären, die du mit dem Code bewirken möchtest:
Code:
         Msleep (dauer);
         count_a = encoder [RIGHT];
         if (count_a == enc_ad)
            dauer = dauer + 1;
         enc_ad  = count_a - enc_ad;
         if (enc_ad >= min_tik)        // ab z.B 10 tiks prüfen
         {
Du erhöhst ja ab und zu die Variable dauer. Passt sich der Wert im Laufe der Zeit von alleine an einen sinnvollen, zur Geschwindigkeit passenden, Wert an?

Ich habe mal Excel etwas bemüht, um rauszubekommen, wie sich der Wert in dauer verändert könnte.
Auch der Wert in enc_ad ist mir bei meinen Excel-Versuchen noch nicht so richtig sinnvoll vorgekommen. Meistens bleibt er bei mir unter den 10 aus min_tik.
Hilfe, mir gehen die Ideen aus, wie sich die Dinger verhalten sollten.

Gruß Sternthaler