Attinyx61 Timer1 im 10bit Modus mit OCR, unklar.

#1289004
Lesenswert?

Hallo, ich komme trotz Datenblatt nicht ganz klar.
AVR-Studio unterstützt im Simulator den Timer 1 nicht korrrekt um selber 
dahinter zu kommen.
Wie, bzw. geht das mit Timer 1 im 10bit CompareMode, da steht was im 
Datenblatt OCR1A,B,C und D zusammen, wobei OCR1C aber nur das High-Byte 
hält, bzw. TC1H dafür sein sollte.
Hintergrund: Brauche Timer0 für was anderes und Timer1 soll mit 
Prescaler 16348 und OCR-Wert $01C1 bei 7,3728MHz einen Sekundentakt 
abgeben. Dieses TC1H ist aber für die Bits 8 und 9 zuständig.
Ich beutze ausschließlich Assembler. Vieleicht kann mir mal jemand kurz 
einige Hinweise geben.
Danke schonmals.
#1289643
Lesenswert?

Hallo, danke für die schnelle Antwort, auf S.92 steht unter anderen "The 
OCR1C holds the Timer/Counter TOP value, i.e. the clear on compare match 
value.
unter anderem beim Init...
 .
 ldi temp1,($0F<<CS10)  ;CS10-CS13 Prescaler=16348
 out tccr1b,temp1    ;OCR-Wert $01C1 für 1sek. Takt
 ldi temp1,$C1             ;low-Byte
 out ocr1a,temp1
 ldi temp1,$01             ;high-Byte
 out tc1h,temp1
 .

und in der Interruptroutine dann mit
 .
 .
 ldi temp1,$0
 out tcnt1,temp1
 out tc1h,temp1           ;wieder auf 0 setzen
 .
 .
 reti

geht das so einfach mit den Doppelregister? Im AVR Simulator kann man 
das noch nicht testen, laut Hilfe wird der Timer beim Simulator noch 
nicht unterstützt.
Mfg

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