Hi,

ich versuche gerade mit diesem Drehencoder:

http://www.pollin.de/shop/shop.php?c...a=MDY2OTU3OTk=

eine Menüsteuerung zu programmieren. Mein Code dafür sieht bisher so aus:

Code:
Do
B = Encoder(pinc.7 , Pinc.6 , Links , Rechts , 1)

Select Case M_pointer

Case 1:
Cls
Locate 1 , 1
Lcd "> Programm 1"
Locate 2 , 1
Lcd "Programm 2"

Case 2:
Cls
Locate 1 , 1
Lcd "> Programm 2"
Locate 2 , 1
Lcd "Programm 3"

Case 3:
Cls
Locate 1 , 1
Lcd "> Programm 3"
Locate 2 , 1
Lcd "Programm 4"

Case 4:
Cls
Locate 1 , 1
Lcd "> Programm 4"
Locate 2 , 1
Lcd "Programm 1"

End Select

Loop

Rechts:
If M_pointer < 5 Then
Incr M_pointer
Else
M_pointer = 1
End If

waitms 10
Return

Links:
If M_pointer < 5 Then
Decr M_pointer
Else
M_pointer = 4
End If
Waitms 10
Return
Mein Problem ist nun, dass der Encoder die Links bzw. Rechts Sub 2x pro Rastpunkt aufruft.

Wenn ich also nach rechts drehe wird immer jeder 2. Menüpunkt angezeigt, also einer übersprungen.

Weiß jemand woran das liegt, bzw wie man es beheben kann ?

mfg Yannic