Wunderbar... sieht mal wieder nach nem Bug in Bascom aus.
Wenn man die beiden ISRs nämlich umschreibt:
Code:
Isr_decoderr:
If Kette_rechts >= 0 Then Left_distance = Left_distance + 1
If Kette_rechts <= 0 Then Left_distance = Left_distance - 1
Return

Isr_decoderl:
If Kette_links >= 0 Then Right_distance = Right_distance + 1
If Kette_links <= 0 Then Right_distance = Right_distance - 1
Return
... dann funktionierts. Keine Ahnung warum.
Wenn ich ne andere Double-Variable deklariere und die mit INCR/DECR veränder, dann klappt das auch. Also ich werd da draus nicht schlau, warum Bascom hier so rumzickt.