Vielen Dank für eure Hilfe.
Ich habe von der Firma www.elgo.de das Magnetische Längenmesssystem EMIX2 an die RNControl angeschlossen und eben mit dem Quatratur Encoder ausgewertet.

Ziel ist es ein elektronisches Längenmesssystem zu entwickeln, das bei Bewegung nach rechts eins nach Oben zeigt

Leider habe ich momentan noch ein paar Probleme, vielleicht kann mir aber jemand von euch einen Tipp geben.

Die Rechtsrichtung funktioniert ziemlich gut, wenn ich aber nach "links" fahre, dann zeigt er auch eine rechtsbewegung an

Die Geschwindigkeit ist miserabel. Es funktioniert nur wenn ich ganz ganz langsam über das Magnetband fahre. Bei einer schnelleren Bewegung verschluckt sich mein Programm.
Der Emix liefert 100 Pulse pro mm zurückgelegtem Weg.
Ist die RNControl dafür zu langsam oder mien Code falsch ?

Wäre super wenn ihr mal einen Blick drauf werfen könntet


Nachfolgend noch mein Code

Code:
$regfile = "m2560def.dat"
$hwstack = 82                                               '80
$framesize = 68                                             ' 64
$swstack = 68                                               '44

$crystal = 16000000                                         'Quarzfrequenz
$baud = 9600


Dim Result As Long
Dim X As Integer
X = 0
Result = 0


'Config Pine.5 = Input
'Usb Alias Pine.5                                            'Ist 1 wenn USB angeschlossen

'Usb Schnittstelle UART initialisierung
'Config Com4 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
'Open "com4:" For Binary As #4                               'USB Buchse


'Initialisierung LCD
Config Pinf.6 = Output
Lcd_rw Alias Portf.6
Lcd_rw = 0

Config Lcd = 20 * 4a , Chipset = Ks077
Config Lcdpin = Pin , Db4 = Portf.3 , Db5 = Portf.2 , Db6 = Portf.1 , Db7 = Portf.0 , E = Portf.5 , Rs = Portf.7
Config Lcdbus = 4

Initlcd

Cursor Off Noblink                                          'Curser ausschalten

'Ansteuerung LCD
   Cls
   Locate 1 , 1                                             'Cursor auf 1 Zeile, 1 Spalte
   Lcd "Radlabor Test"
   'Print #4 , ""

   Locate 2 , 1
   Lcd "Result:"

   Locate 3 , 1
   Lcd "X:"
   'Print #4 , "X"

   Locate 4 , 1
   Lcd "Richtung:"


Config Pina.1 = Input
Config Pina.2 = Input
                                              'Alle internen Pullup Widerstände ein
Pina.0 = 0
Pina.1 = 0

Config Pina.2 = Input
Tasterx Alias Pina.2
'Porta.2 = 1                                                 'Interner Pullup Widerstand ein

'Schleife mit Quadratur Encoder
Do
  Result = Encoder(pina.0 , Pina.1 , Links , Rechts , 0)

  If Tasterx = 1 Then
   X = 0
   Locate 3 , 4
   Lcd X ; "   "
  End If
Loop


Links:                                                      'Linksdrehen
   Decr X
   Locate 2 , 9
   Lcd Result
   Locate 3 , 4
   Lcd X ; "   "
   Locate 4 , 12
   Lcd "Links  "
   Return
Rechts:                                                     'Rechtsdrehen
   Incr X
   Locate 2 , 9
   Lcd Result
   Locate 3 , 4
   Lcd X ; "   "
   Locate 4 , 12
   Lcd "Rechts "
   Return

End