Forum: Mikrocontroller und Digitale Elektronik 16 Bit Timer


von Malte Struebert (Gast)


Lesenswert?

Hallo,

bin gerade dabei mit dem 16 Bit timer rumzuexperimentieren und hab ein 
kleines Problem. Ich möchte den Timer so einstellen das er nach einer 
festen Zeit (später dann so ca. alle 10 Sekunden) einen Interrupt 
aufruft und dieser dann eine Routine ausführt.

Zum test hab ich volgenden code implementiert (zur initialisiereung des 
Timers)

ldi temp, (1<<TOV1)
out    TIFR, temp
ldi temp, 0x00
out TCNT1H, temp
ldi    temp, 0xFF
out    TCNT1L, temp
ldi temp,0x00
out  TCCR1A, temp
ldi r17,0x00
ldi    temp, 0b00000101
out   TCCR1B, temp
loop: rjmp loop

Als Routine habe ich eine auf den Intrrupt Vector $05 gelegt, diese 
scheint aber nie aufgerufen zu werden.

Kann mir vieleicht jemand helfen oder ein kleines (minimal) demo für 
einen 16 Bit timer geben.

Gruß
Malte.

von crazy horse (Gast)


Lesenswert?

"sei" vergessen? an den SP gedacht? (daß nur mal als häufigste 
Fehlerursache vorab, ehe sich einer die Bits genau anschaut)

von mikki merten (Gast)


Lesenswert?

Die Interrupt-Freigabe für den Timer muss im TIMSK-Register und nicht im 
TIFR-Register erfolgen.

von Malte Struebert (Gast)


Lesenswert?

Hi,

danke ich habs hinbekommen... hatte tatsächlich dsa sei gergessen ... 
peinlich

Trotzdem danke...
Gruß
Malte.

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.