Forum: Mikrocontroller und Digitale Elektronik ATXMEGA 32-bit PWM


von Marko R. (dr_marko_rocznik) Benutzerseite


Lesenswert?

Kann man beim ATXMEGA 2 kaskadierte 16-Bit Timer als 32-Bit Timer zur 
PWM-Erzeugung nutzen (ohne sich selber was mit einer ISR basteln zu 
müssen).

Ich habe mir das für den 16-Bit-Timer geschrieben und dsa funktioniert 
super:

void PWM_ini()
{
    TCD5.CTRLA = TC_CLKSEL_DIV1_gc; // use full 8 MHz for counter
    TCD5.CTRLB = TC_WGMODE_SINGLESLOPE_gc;  // single slope mode
    TCD5.CTRLE = TC_CCBMODE_COMP_gc; // output compare enabled
    TCD5.PER = 8000; // 8 MHz clock divided my 8000 = 1kHz
    TCD5.CCB = 4000; // 8000/4000 = 50% modulation (if we write 4000);
}


Jetzt hätte ich es gern auf 32-Bit aufgebort.


Viele Grüße!
 Marko

von Äh was? (Gast)


Lesenswert?

Hallo Herr Doktor!

Marko R. schrieb:
> Jetzt hätte ich es gern auf 32-Bit aufgebort.
Und was soll das werden?
PWM in Zeeeeiiiitluuuupeeee?
Periodendauer für 32 Bit bei 400 MHz Takt wären 10 Sekunden...

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Schau dir das Event System an. Bin mir fast sicher, das ich mal im 
Manual gelesen habe, das man Timer damit kaskadieren und im Hintergrund 
laufen lassen kann.

von Marko R. (dr_marko_rocznik) Benutzerseite


Lesenswert?

Ja, man kann sie kaskadieren. Aber ich sehe nicht wie das "compare" dann 
noch funktionieren soll.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.