Forum: Mikrocontroller und Digitale Elektronik PIC Timereinstellungen?!?! Bitte um Hilfe


von Christian B. (christianb)


Angehängte Dateien:

Lesenswert?

Hallo,

Ich möchte mit meinen PIC 18F2550 Millisekunden zählen.

Es hängt ein 20Mhz Quarz dran, der intern über die PLL auf 96Mhz/2 also 
48Mhz hochgetaktet wird (Siehe Anhang).

Timer0 wird ja immer mit CPU Takt 1/4 betrieben also 12Mhz.
Ich habe noch den Prescaler auf 1:256 gestellt und müsste somit alle 
21,33us einen Zählimpuls am Timer0 haben.

Um nun 1ms zu erhalten Rechne ich 1ms/21,33us = 46,875. Ich lasse den 
PIC nun immer bis 46 zählen um nun ungefähr jede ms einen Interrupt zu 
bekommen und ziehe den Timer immer mit 209 auf (255 - 46 = 209). Alle 8 
Zählungen korrigiere ich um 7 um den Fehler von 0,875 zu korrigieren.

PROBLEM:

Ich bekomme viel schneller Interrupts, Ergo muss da irgendwas faul sein!

Kann jemand sagen wo mein Problem liegen könnte?

MFG

Christian

von Christian B (Gast)


Lesenswert?

Ich habe nun solange probiert, bis ich rausgefunden haben, dass es genau 
dann stimmt, wenn ich die Berechnung mit 96Mhz mache. Dann muss ich 
jedesmal bis 375 zählen lassen. Benutze also nun den 16 Bit Mode des 
Timers.

Kann mir jemand erklären, wieso und warum das jetzt so ist?????????

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.