Alle 10µs Interrupt

Gast #1514654
Lesenswert?

Hallo,

irgendwie bin ich grad etwas durcheinander.

Ich möchte alle 10µs einen Interrupt erzeugen.

Ich habe einen 16 MHz Quarz. Ich nehme einen Prescaler von 32.

16M/32 = 500000

Also 500000 "zähler" pro Sekunde.

500000 * 10^-6 ergibt dann 0,5 Zähler pro µs.

Also müsste ein OCR Wert von 5 doch alle 10 µs zum Interrupt führen 
oder?
#1514677
Lesenswert?

@  martin (Gast)

>Ich möchte alle 10µs einen Interrupt erzeugen.

Willst du das WIRKLICH? Wozu glaubst du das zu brauchen?
Damit ist dein AVR ziemlich zugebügelt.

>500000 * 10^-6 ergibt dann 0,5 Zähler pro µs.

Logisch bei 500kHz.

>Also müsste ein OCR Wert von 5 doch alle 10 µs zum Interrupt führen
>oder?

Nöö, da muss 4 rein, denn der Zähler zählst von 0..4 = 6 Takte. Aber der 
CTC Modus wäre hier sinnvoll. Wobei 10uS Interrupt alles andere als 
sinnvoll klingt. Auch bei 16 MHz.

MfG
Falk
#1514715
Lesenswert?

tobi schrieb:
> ATmega32 Timer2 (Timer0 ist andersweitig belegt).
>
> Datenblatt seite 127.
Ah ja, da hat der Timer 2 noch ein paar mehr zur Verfügung, wieder was 
gelernt :-)

Falk Brunner schrieb:
>>Ich möchte alle 10µs einen Interrupt erzeugen.
>...
>>Also müsste ein OCR Wert von 5 doch alle 10 µs zum Interrupt führen
>>oder?
>
> Nöö, da muss 4 rein, denn der Zähler zählst von 0..4 = 6 Takte. Aber der
Ähm, ich bin aber auch für 5 :-)
Funktion:
Zählt los bei 0. Nach 2µs auf 1, nach 4µs auf 2, nach 6µs auf 3, nach 
8µs auf 4, nach 10µs auf 5 --> Compareinterrupt nach 10 µs.

> CTC Modus wäre hier sinnvoll. Wobei 10uS Interrupt alles andere als
> sinnvoll klingt. Auch bei 16 MHz.
ACK.

Reinhard
#1514720
Lesenswert?

martin schrieb:
> Ich möchte für einen Test gucken wie lange ca. eine Berechnung dauert
> ohne den Assembler dafür durchzugehen.
Dann verzichte doch auf die hohe Interruptlast und lies' vor und nach 
der Berechnung den Wert eines frei laufenden Timers ein und bilde die 
Differenz zwischen danach und davor - und schon weißt Du, wie lange die 
Berechnung gedauert hat.

Das kannst Du noch beliebig ausbauen mit Max- und Minzeit, gemittelte 
Zeit, ...

Gruß,
Bernd

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren