Ich habe ein Problem mit Timer1 als "normalen" Timer.
In einem anderen Beitrag habe ich schon gefunden, das Config Timer1... beim Tiny26 so nicht funktioniert wie beim Timer0.
Wie kann/muss ich jetzt alles einstellen, das der Timer auch als Timer funktioniert und nicht im PWM-Mode oder Compare arbeitet?
Hier die relevanten Codeteile. Mit Timer0 funktioniert(e) alles:
Code:
$regfile = "at26def.dat"
$crystal = 16000000
Led Alias Porta.4
Tccr1b = 11 'Prescale=1024 (mit 1a ändert sich auch nix)
Config Int0 = Change 'bei jeder Halbwelle reagieren
Enable Int0
On Int0 Int0_isr
On Timer1 Timer_irq
Enable Timer1
Enable Interrupts
Int0_isr:
Start Timer1
Return
Timer_irq:
Tcnt1 = Timervorgabe 'der Wert wird im Programm geändert
Set Led
Return
Der Code ist hier erstmal soweit abgespeckt, das bei Überlauf des Timers wenigstens mal eine LED leuchtet.
Der INT0 funktioniert.
Wie schon gesagt, wenn alles auf Timer0 umgeschrieben ist funktioniert alles wie es soll, aber mit Timer1 nicht. Es wird nicht in die TimerISR gesprungen.
Lesezeichen