Problem mit Timern auf Atmel Mega8L (Asuro)

OP #997116
Hi,

ich habe wichtige Frage zu den Timern auf dem Asuro. Bin 
fortgeschrittener Anfänger.

Ich will eine Zeit mit möglichst genauer Auflösung stoppen (Prescaler 1) 
und die maximal zu messende Zeit liegt bei 318 ys (mikrosekunden), also 
wenn er länge läuft und noch nicht gestoppt wurde, dann kann er auch mit 
dem zählen aufhören oder so.

1. Frage:
Welchen Timer kann/darf ich hernehmen? ich würde gerne den 16-bit timer 
(t1) hernehmen, weil der länger laufen kann und man so keine Variable 
hochzählen muss (was wieder die zeit ungenauer macht).

2. Frage:
Warum kommen scheinbar zufällige Werte (zwischen 8 und 45) hier als 
Ergebnis raus?
1
TCCR0 &= ~(1<<CS02 | 1<<CS01 | 1<<CS00); //Timer0 stoppen (vorsichtshalber)
2
TCNT0=0; //Timer0 zurücksetzen
3
TCCR0 |= (1<<CS00); //Starte Timer0
4
Sleep(123); //Irgendeine Zeit warten
5
TCCR0 &= ~(1<<CS00); //Stoppe Timer

jetzt müsste man am besten noch einstellen, dass das Programm einen 
Interrupt macht, wo eine Variable bei jedem Timerüberlauf hochgezählt 
wird. Weiß leider nicht wie Interrupt Service Routinen bei AVR 
funktionieren.
1
zeit = TCNT0; (Zeit auslesen)

Naja falls jemand einen Fehler findet oder mir irgendwie weiterhelfen 
kann. Würd mich über Antworten freuen.

Gruß Thomas

PS: Datenblatt ist hier: 
http://www.atmel.com/dyn/resources/prod_documents/doc2486.pdf falls es 
sich jemand anschauen mag.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.