Da steht aber nur was von Encodertimern. Nimm mal die Zeilen:
in dem Fenster wo drüber steht: "Die vollständige ISR für (m)einen Encoder bei Archie ..." - das ist GENAU das Vorgehen wie weiter oben mit der Kanalskizze beschrieben.Code:// Encoderticks Iencdrx nur hochzählen, IencBx rauf- od runterzählen Iz_diff0 = tmrE0; // Abspeichern Zeit seit dem letzten ISR-Aufruf tmrE0 = 0; // Resetten ##>> IN der ISR ohne CLI/SEI möglich Iencdr0 ++; // Incrementiere Encodercounter, zählt NUR aufwärts if (IsBitSet (PIND, 4)) IencB0++; // Rad treibt vorwärts, math. negativ else IencB0--; // Rad treibt rückwärts, math. positiv







Zitieren

Lesezeichen