Allgemeine Frage zu Timern

OP #3450398
Lesenswert?
• ▲
▼
Hallo zusammen,
ich habe zwei Fragen um meine Verwirrung (ausgelöst durch ein 
Youtube-Video) bezüglich Timer/Counter loszuwerden.

1. Frage
In diesen Video 
(http://www.youtube.com/watch?v=Tj6xGtwOlB4&list=PLE72E4CFE73BD1DE1&index=15 
ab ca. Min. 30:30) wird gesagt, das der Prescaler eine bestimmte Größe 
nicht unterschreiten darf.
Das Beispiel war eine CPU-Frequenz von 1MHz und die Verwendung eines 
16-Bit-Timers. Die Berechung sagte 1000000/65535=15,3 somit sollte der 
Prescaler nicht kleiner als 15,3 sein.
Ist das so und wenn ja weshalb und was passiert wenn der Prescaler 
kleiner ist?
Oder gilt bei einem Prescale von 8 und einer CPU-Frequenz von 16MHz 
würde der Timer mit 2MHz laufen?

2. Frage
Wenn ich einen Mikrocontroller (in diesem Fall ein Atmega128) mit einem 
16MHz Quarz anschließe, dann takten auch alle Timer (0-3) mit der 
Frequenz, richtig?

Viele Grüße,
Crazy
#3450403
Lesenswert?
• ▲
▼
Nicolai B. schrieb:
> Das Beispiel war eine CPU-Frequenz von 1MHz und die Verwendung eines
> 16-Bit-Timers. Die Berechung sagte 1000000/65535=15,3 somit sollte der
> Prescaler nicht kleiner als 15,3 sein.

So ein Quatsch, Prescaler wählt man anhand der gewünschten Auflösung und 
erwünschten Zeit, die mit dem Timer erzeugt werden soll.

> Wenn ich einen Mikrocontroller (in diesem Fall ein Atmega128) mit einem
> 16MHz Quarz anschließe, dann takten auch alle Timer (0-3) mit der
> Frequenz, richtig?

Ja, falls der Prescaler auf 1 gestellt ist.
#3450404
Lesenswert?
• ▲
▼
Nicolai B. schrieb:

> ab ca. Min. 30:30) wird gesagt, das der Prescaler eine bestimmte Größe
> nicht unterschreiten darf.

Das kann man höchstens im Zusammenhang mit dem Beispiel sehen, welches 
an dieser Stelle im Video gerade durchbesprochen wird. Einen allgemeinen 
technischen Grund gibt es dafür nicht. Ein Timer hat bestimmte Prescaler 
und du kannst den nehmen, der für dich am zweckmässigsten ist.

> Oder gilt bei einem Prescale von 8 und einer CPU-Frequenz von 16MHz
> würde der Timer mit 2MHz laufen?

genau so ist das.

> 2. Frage
> Wenn ich einen Mikrocontroller (in diesem Fall ein Atmega128) mit einem
> 16MHz Quarz anschließe, dann takten auch alle Timer (0-3) mit der
> Frequenz, richtig?

richtig.
Das heisst genauer gesagt: du taktest die Eingangsstufe in der der 
Prescaler sitzt mit diesem Takt. Der eigentliche Takt, mit dem dann der 
Timer tatsächlich läuft, ergibt sich dann aus der Kombination aus diesem 
Systemtakt und dem für den Timer eingestellten Prescaler

FAQ: Timer

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.