Gast
#428676
Hallo,
werkle jetzt schon stundenlang an einem Problem mit dem Timer1 des
Mega8 . Will diesen im FastPWM Mode 14 betreiben.
Hier kann man den TOP Wert mittels des 16Bit Registers ICR1 einstellen.
Genau das geht bei mir nicht !
Er zählt immer bis TCNT1H 0x01 ,TCNT1L0xFF also bis 511 hoch dann wieder
runter. Sollte aber bis zum Wert laufen der in ICR1 steht und dann
wieder bei 0 starten.
Hier noch die paar Codezeilen , villeicht hat einer ei´nen Tip fur mich.
Gruss Gerhard
.include "m8def.inc"
.DSEG
.CSEG
.ORG 0x0000
rjmp Reset
rjmp 0
rjmp 0
rjmp 0
rjmp 0
rjmp 0
rjmp 0
rjmp 0
rjmp 0
rjmp 0
Reset:
;## PWM einstellen ##
ldi r16,0
ldi r17,100
out OCR1AH,r16
out OCR1AL,r17
out OCR1BH,r16
out OCR1BL,r17
;## Register ICR1 auf 200 stellen
ldi r16, 0
ldi r17, 200
out ICR1H, r16
out ICR1L, r17
;## Timer 1 auf FastPWM Mode 14 einstellen ##
ldi r16, 0b11110010
out TCCR1A, r16
ldi r16, 0b00011001
out TCCR1B,r16
main:
rjmp main