Forum: Mikrocontroller und Digitale Elektronik atmega16 pwm counter problem bei der simulation


von Rolf R. (ultra-low)


Lesenswert?

hallo

TCCR1A = (1 << COM1A1) | (0 << COM1A0) | \
    (0 << WGM11) | (1 << WGM10);
TCCR1B = (0 << WGM13) | (1 << WGM12) | \
    (0 << CS12) | (0 << CS11) | (1 << CS10);
OCR1A = 0x80;

so initialisiere ich den counter. also "fast pwm mode". in der 
simulation verhält sich aber der TCNT1 wie in "pwm, phase correct " , 
zählt also rauf und dann runter. wobei er nur rauf zählen sollte. 
könntet ihr dazu was sagen ?
ich benutze avr studio 4.16und winavr20081205


gruss

von Johannes M. (johnny-m)


Lesenswert?

In den Known Issues zum Simulator steht
"16-bit Timer/Counters on all devices have several problems with PWM, 
prescaler and output compare. Output compare registers are not buffered 
properly."

Abgesehen davon solltest Du Dir das (0 << IRGENDWAS) abgewöhnen. Das 
bringt nichts außer Verwirrung und kann in Zusammenhang mit Operatoren 
wie |= bzw. &= schnell zu Fehlern führen. Siehe auch 
Bitmanipulation. An Deiner Zeichensetzung und Groß-/Kleinschreibung 
solltest Du auch dringend arbeiten...

von Rolf R. (ultra-low)


Lesenswert?

Ok. Danke. Muss man halt damit leben.

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.