PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Timer problem! Ich brache Timerwerte



hunni
30.01.2009, 19:14
Hallo zusammen,
ich bin gerad dabei ein Blitzlicht für mein Modell zu bauen. Dieses möchte ich einfach über meine Fernsteuerung ein und aus schalten. Leider habe ich immer noch nicht verstanden, wie ich den Timer berechne. Ich habe ein Impuls zwischen 0,9ms und 2,1ms. Der Quarz läuft bei 5 MHZ.

Könnte mir jemand erklären wie ich den Timerwerte berechne? So ganz kriege ich das nicht hin. Oder soll ich das wieder ausprobieren. Was haltet ihr für besser ( ausprobieren oder berechnen)

Über eine Antwort würde ich mich sehr freuen.

Hunni

DemoFreak
30.01.2009, 19:58
Natürlich berechnen.

Was genau verstehst du daran nicht? Schon das Grundprinzip nicht oder nur, wie man den Startwert/Prescale des Timers berechnet, damit er aller gewünschten Zeitabstände einen Interrupt auslöst?

hunni
30.01.2009, 20:19
das grundprinzip und so versteheb ich.
Folgendes Beispiel:

Ich weiss, das an meinen Int0 zum Beispiel eine frequenz von 50 Hz anliegen. Nun möcxhte ich wissen, welchen Timerwert dann der Timer ausgeben würde. Quarz 5 Mhz Prescaler 1 Timer1.

Dirk
30.01.2009, 21:18
Hier ...
https://www.roboternetz.de/phpBB2/viewtopic.php?t=42721
... war das mal ganz gut erklärt einschließlich einer Excel-Tabelle für die Berechnung.

Gruß Dirk

hunni
31.01.2009, 12:41
cool danke genau das hab ich gesucht.
Vielen Dank für eure Hilfe.
Hunni

panzerkeks
17.02.2009, 14:53
Falls noch aktuell:
http://panzerkeks.pa.ohost.de/tools/timerCalc.html
--> Programm zur Berechnung der Timer werte, mit vielen Einstellmöglichkeiten

oberallgeier
17.02.2009, 15:23
Hi,


... Programm zur Berechnung der Timer werte, mit vielen EinstellmöglichkeitenDas ist ja eine hübsche Oberfläche. Also gleich mal testen:
CPU-Frequenz = (mein Standardwert) 20 000 000 (=20 MHz)
Timerauflösung = 16 Bit
Timerfrequenz = 20 000 /s

Ergebnis:
Prescaler 1
Preload 64536 . . . hmmmm, geht ja flott und, hei, da sind ja noch so hübsche buttons [<][>][+]. Also mal auf [>] drücken, und prompt gibts ein neues
Ergebnis:
Prescaler 8
Preload 65411

Schluck. Schluck. Zwei ähnliche Preloads bei so unterschiedlichen Prescalern? In welchen Timern kann man 16bittige Preloads laden? Schade, denn die Oberfläche ist viel schöner als bei meinem popeligen Excelsheet. Dafür kann ich mit meinem popeligen Ding CTC rechnen, phase correct und so. So etwas macht ja manchmal auch Sinn. Immerhin: es ist eine sehr hübsche, praktische Oberfläche.