Forum: Mikrocontroller und Digitale Elektronik C164CS - Timer initialisieren


von H2O (Gast)


Lesenswert?

Hallo allerseits,

ich habe hier einen C-Code vorliegen in dem der Timer T6 folgendermassen 
initialisiert wird:

GPT12E_CAPREL = 5000;     // Interrupt T6 alle 1 ms
GPT12E_T6CON = 0x80c0;
GPT12E_T6IC = 0x0051;      //ILVL 4, GLVL 1

Ich frage mich nun ob bei einer initialisierung des Reloadsregisters mit 
5000 wirklich alle 1ms ein Timerinterrupt ausgelöst wird, da ich díe 
unten stehende Formel für den C167 kenne und dachte, dass diese auch für 
den C164 gilt.

Periode_Tx = (2^16 - TxREL) * 1/f_Tx
f_Tx = f_cpu/( 2^TxI * 8)

TxREL = 5000
f_cpu = 20 MHz
TxI = 000b

Periode_Tx = 60536 * 8/(20*10^6) = 0,024....Sekunden = 24 ms

Weiß zufällig jemand ob man die Formel so auch für den C164 verwenden 
kann bzw. kennt jemand eine andere Formel für die Berechnung des Wertes 
für das Reload-Registers des C164?

Schon mal danke für eure Antworten

Mfg H2O

von Daniel (Gast)


Lesenswert?

schon ne weile her, weiss es nicht mehr auswändig, aber steht ganz 
sicher im manual...

von H2O (Gast)


Lesenswert?

das ist das problem, da such ich jetzt schon den halben Tag rum und 
genau da hab ich bis jetzt noch nix gefunden...

von Helmut (Gast)


Lesenswert?

Hallo Wasser,

wenn Du mit dem Manual nicht klarkommst:

unter der Infineon Seite kannst Du DAVE herausgoogeln:
Dave ist ein Tool zum Einstellen aller Deiner Peripherie.
Ich hab das Ding immer genommen und hab kontrolliert was erzeugt wird.

Kann ich Dir nur empfehlen

Gruss Helmut

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.