mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik QDEC Module XMEGA ASF


Autor: Sebastian S. (audionaut)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.
static void qdec_init(void)
{
  qdec_get_config_defaults(&qdec1);
  qdec_config_phase_pins(&qdec1, &PORTB, 1, false, 500);
  qdec_config_revolution(&qdec1, 2400);
  qdec_enabled(&qdec1);
}

int main (void)
{
  sysclk_init();  
  board_init();

  //Rotary encoder
  qdec_init();
  
  qdec1_count = 0;
  
  
  while (1)
  {
    qdec1_count = qdec_get_position(&qdec1);
         .
         .
         .
        }
}

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

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.