Geht SBIC und SBIS nich im TIFR? (Atmega8)

Gast #334190
Lesenswert?

Ich arbeite gerade an ein projekt wo ich ein delay brauche wenn ich auch
was anderes mache (auf ein byte im USART warte), und da habe ich mir
gedacht ich kann timer1 oder 2 verwenden...

Aber ich habe versucht ein
SBIC   TIFR,OCF1A

zu machen. Das geht offentsichtlich nicht, den der assembler schreibt:
...(141): error: Operand 1 out of range: 0x38

Als ich hier gesucht habe und herausgefunden das das SCHREIBEN zur TIFR
nicht mit SBI und CBI geht habe ich mir gedacht das vieleicht das reden
auch nicht geht(?)!

Zur not habe ich jetzt:
IN     R19,TIFR
SBRC   R19,OCF1A

Und das scheint zu funktionieren, das andere währe aber kürzer :(
Geht SBIC und SBIS nicht ins TIFR?


Brian Lund
Dänemark
#334193
Lesenswert?

Ich hatte ein ähnliches Problem,

es sollte in einer TIMER-Interrupt-Routine festgestellt werden,

ob schon wieder ein Interrupt von diesem Timer ausglöst wurde.

So könnte man es lösen:

 in   temp,TIFR
 SBRS temp,TOV0 ; SPRINGE, wenn BIT gesetzt (Zeitüberschreitung
 rjmp ....
 ...

Bernhard

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