QDEC Module XMEGA ASF

OP #4689989
Hallöle,

ich habe einen Drehgeber:
http://de.rs-online.com/web/p/products/7816809/

an einem XMEGA128A3U und verwende zur Auswertung den Quadrature Decoder 
aus dem ASF:
http://asf.atmel.com/docs/3.27.3/xmegaau/html/group__qdec__group.html
http://asf.atmel.com/docs/3.27.3/xmegaau/html/xmega_qdec_quickstart.html

Habe den Code aus dem Quickstartguide einfach übernommen.
1
static void qdec_init(void)
2
{
3
  qdec_get_config_defaults(&qdec1);
4
  qdec_config_phase_pins(&qdec1, &PORTB, 1, false, 500);
5
  qdec_config_revolution(&qdec1, 2400);
6
  qdec_enabled(&qdec1);
7
}
8

9
int main (void)
10
{
11
  sysclk_init();  
12
  board_init();
13

14
  //Rotary encoder
15
  qdec_init();
16
  
17
  qdec1_count = 0;
18
  
19
  
20
  while (1)
21
  {
22
    qdec1_count = qdec_get_position(&qdec1);
23
         .
24
         .
25
         .
26
        }
27
}

Funktioniert auch soweit. Das Problem ist nur, das bei jedem 
Hardwareschritt um 4 hochgezählt wird, also jede Flanke als inkrement 
genommen wird. Könnte mir vorstellen, dass das für einen Motor oderso 
gedacht ist, aber bei einem handbetätigten Encoder macht das ja wenig 
Sinn.

Habe schon versucht den Prescaler des Counters auf 4 zu stellen. Hat 
aber nichts gebracht. Auch den digitalen Filter des Eventchannels auf 4 
zu stellen bringt nichts.

Hatte das Problem schon mal jemand oder übersehe ich einfach eine 
offensichtliche Einstellmöglichkeit?

Danke schonmal für eure Zeit.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 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.