Drehgeber einlesen

Gast #152614
Hallo kann mir jemand bitte mal helfen, im Wiki habe ich das gefunden um
eine Drehencoder einzulesen!?

int table[4][4]={{0,1,-1,0},{-1,0,0,1},{1,0,0,-1},{0,-1,1,0}};
  int position=0; // zaehlen wir mal die absolute Position
  volatile int quadrature_input; // bit 0 und bit 1 sind
Quadratureingaenge
  int new_quadrature_value, last_quadrature_value=quadrature_input;

Folgenden Code ausreichend oft wiederholen (in der Programm
Hauptscheife oder einer Zeitgeber gesteuerten Interrupt Routine):
  new_quadrature_value=quadrature_input;
  position+=table[last_quadrature_value][new_quadrature_value];
  last_quadrature_value=new_quadrature_value;


Aber wie setzte ich das denn jetzt richtig um mit AVRGCC wenn ich den
Drehencoder auf PD3 und PD4 habe! Oben steht ja
volatile int quadrature_input; // bit 0 und bit 1 sind
Quadratureingaenge!

Muss ich das jetzt umlöten auf PD0 und PD1 oder gibt es auch eine
andere lösung wie man das macht!!??

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.