-
        

Ergebnis 1 bis 3 von 3

Thema: ATXMega Hi-res Fragen

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    24
    Beiträge
    1.544

    ATXMega Hi-res Fragen

    Anzeige

    Hi,

    ich hab mal eine Frage zum Hires Modul des ATXMega. Ich hab das Modul korrekt eingestellt, der Timer läuft im Single-Slope PWM Modus, CLKSYS ist 32MHz, CLKPER4 ist auf 128MHz eingestellt (per PLL).
    Nun heißt es im DB:
    Code:
    The hi-res extension will not output any pulse shorter than one peripheral clock cycle; i.e., a compare value lower than
    four will have no visible output.
    Ich verstehe nicht, wo jetzt der Vorteil liegt?
    Angenommen, ohne HI-RES ist der Timer so eingestellt:
    Code:
    TCD0.CTRLA = TC_CLKSEL_DIV1_gc;
    TCD0.CTRLB = TC_WGMODE_SS_gc | TC0_CCAEN_bm;
    TCD0.PER = 1000;
    dann hat die PWM eine Frequenz von ca. 32kHz und eine Auflösung von 1000 Steps.
    Wenn ich jetzt das HI-RES Modul hinzunehme und das PER-Register auf 8000 stelle, komme ich auch auf ca. 32kHz, die Auflösung ist aber immer noch nur bei 1000 Steps, da ja die unteren 3LSB nicht berücksichtigt werden (laut der obigen Aussage aus dem DB). Da steht zwar "lower than four", aber ich hab noch das HRPLUS-Bit gesetzt, so wird aus den 2Bit 3Bit.

    Hab ich was übersehen / falsch verstanden oder ist das HI-RES Modul für mich nutzlos (in dem Fall)?

    Gruß
    Chris

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    59
    Beiträge
    2.435
    Hallo Chris,

    Ich kenne den ATXMega zu wenig, aber das Problem ist folgendes uns gilt für praktisch alle Controller:

    Die I/O-Pins sind Flip-Flop, welche mit einer bestimmten Frequenz getaktet werden (peripherial clock).
    Liegt dieser Takt z.B. bei 1MHz, dann kann das Flip-Flop nur jede 1µs seinen Zustand ändern. Die maximal erzeugbare Ausgangsfrequenz liegt also bei 500kHz.
    Auch irgendwelche anderen, langsameren, Signale werden in diesen 1µ-Raster gepresst. Es ist also egal, mit welcher Präzision du dein internes Signal erzeugst, genauer als 1µ wird das Signal am Ausgang nicht.

    Wenn du jetzt, immer noch im obigen Beispiel, eine interne Frequenz mit über 500kHz erzeugst wird's lustig. Jetzt kommts drauf an, welchen Pegel das interne Signal gerade hat, wenn der Ausgang das Signal abtastet. Der Ausgang wird dann irgendetwas mit einer deutlich niedrigeren Frequenz machen....

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.03.2011
    Beiträge
    1.398
    Zitat Zitat von Che Guevara Beitrag anzeigen
    da ja die unteren 3LSB nicht berücksichtigt werden (laut der obigen Aussage aus dem DB). Da steht zwar "lower than four" ..
    Ich kenn den Chip zwar nicht, aber "Lower than four" heißt für mich "kleiner als 4" nicht "modulo 4". Also Scope und nachschauen

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

Ähnliche Themen

  1. ATXMega Bootloader - ein paar Fragen
    Von Che Guevara im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 03.07.2014, 12:14
  2. [ERLEDIGT] AtXMega und Quadraturdecoder
    Von the_Ghost666 im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 08.11.2012, 21:47
  3. ATXMEGA UART Empfangsproblem
    Von aussternengemacht im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 16.11.2010, 16:58
  4. Bascom und Atxmega
    Von Tretsch im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 14
    Letzter Beitrag: 13.07.2009, 19:18
  5. DS1621 High Res. for C-Control I v2.0x
    Von Drifter2006 im Forum Controller- und Roboterboards von Conrad.de
    Antworten: 0
    Letzter Beitrag: 23.11.2006, 16:02

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •