ATtiny45 Peaks in PWM

OP #4731949
Lesenswert?

Hallo,

ich bastle gerade an einer kleinen PWM-Anwendung mit dem ATtiny45. 
Controller läuft mit internem Takt.

Minimal-Programm:
1
#include <avr/io.h>
2

3
int main(void)
4
{
5
    TCCR0A |= (1<<WGM00)|(1<<WGM01); // Fast PWM
6
    TCCR0B |= (1<<CS00); // ohne Prescaler
7
    DDRB |= (1<<PB0); // PB0 als Ausgabe-Pin
8
    TCCR0A |= (1<<COM0A1);  // PWM aktivieren
9
  
10
    while (1) {
11
        OCR0A = 0; // 0 als PWM-Wert ausgeben  
12
    }  
13
}

Wenn ich das so mache, bekomme ich leider keine saubere 0-Line, sondern 
alle rund 250us einen Peak von 1us. Was mache ich falsch?

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