Forum: Mikrocontroller und Digitale Elektronik Timerproblem


von Karlheinz Druschel (Gast)


Angehängte Dateien:

Lesenswert?

Hi Leute,

ich hab da ein kleines Verständnisproblem mit dem Timer 0:

Das Proggi läuft auf dem STK500mit 3.69 MHz Taktfrequenz.
Für Timer0 ist ein Vorteiler von 1 eingestellt, also Systemtakt.
Dementsprechend wird als TCNT0 alle 1/3.69MHz = 0.271 us erhoeht.
Der Timer laeuft von 155 - 255, also 100 Counts.
Also muesste alle 100*0.271us = 27.1 us ein Overflow auftreten.
In diesem Interrupt toggle ich einen Ausgangspin, der muesste also mit
einer Frequenz von 1/27.1us = 36.9 kHz schalten. Oder ?
Laut meinem Oszi habe ich aber eine Rechteckspannung mit einer Frequenz
von 16.799 kHz.
Kann mir das mal einer erklären ?



Greetings
Karlheinz

von crazy horse (Gast)


Lesenswert?

wie misst man mit einem Oszi 16,799kHz???
18,45 müssten es sein, das wäre korrekt.

von Karlheinz Druschel (Gast)


Lesenswert?

Naja, ich habe ein digitales Speicher (tds 1012), das berechnet die
Frequenz und zeigt sie an
wie kommst du denn auf 18.45 ? wo iste denn mein denkfehler ?

von Peter D. (peda)


Lesenswert?

Wenn Du den Pin toggelst, dann dauert eine Periode ja 2 Interrupts, also
18,45kHz.

Der restliche Fehler liegt wohl darin, daß Du das Reload nicht mit
einer Addition machst, d.h. die Interruptbehandlungszeit unter den
Tisch fallen läßt.


Peter

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.