pawel1730 napisał: Połączyłem bezpośrednio enkoder do uC i po kilku obrotach lewo/prawo pozycja "0" a fizyczne "0" różnią się, nie jest to jakaś duża różnica ale, więc chyba muszą mieć wpływ.
Ciekawe jak to jest możliwe?

Rozrysuj te sygnały i zastanów się jaka sytuacja mogłaby to spowodować? W twoim przypadku zapewne winowajcą jest użycie wewnętrznego podciągania. Ten "rezystor" ma stosunkowo dużą wartość - kilkadziesiąt kOm, daj np. podciąganie zewnętrzne rzędu 4k7 i problem pewnie zniknie. Kolejna sprawa - jeśli oczekujesz, że pozycja się nie zmieni, to użyj enkodera z indeksem. Zwykłe enkodery służą do tego, aby podać liczbę kroków od ostatniego odczytu. Jeśli zgubią krok, albo licznik się przepełni to pozycja się przesunie, normalne. U ciebie się przesunęła, bo gubisz kroki na skutek zbyt słabego podciągania.
pawel1730 napisał: Natomiast pojawiła się następna nieznana rzecz. Gdy timer TCD0 zlicza ze znakiem to już podmiana na TCE0 liczy w zakresie 0-2400 ?
A jak ustawiasz to "liczenie ze znakiem"? Timer zlicza impulsy w górę lub w dół. To jak interpretujesz jego licznik to wyłącznie twoja sprawa. BTW, nigdzie nie ustawiasz rejestru PER, zakładasz, że ma domyślną wartość? Zwykle ma 0xFFFF, ale jeśli wcześniej gmerałeś przy timerze to już niekoniecznie. W jaki sposób stwierdzasz, że timer liczy tylko do 2400?