Gast
#47865
Hallo Experten,
habe folgendes Problem:
mit meinem mega8 generiere ich ein fast pwm. Habe folgendes gemacht:
/* PWM Configuration **********************************/
sbi(DDRB,PB1); // Pin PB1 autput for PWM
outp(0x83, TCCR1A); // Config 10 bit fast pwm
outp(0x09, TCCR1B); // Prescaler und fast pwm
Den Wert für das Verhältnis stelle ich so ein:
void set_pwm(unsigned int pwm)
{
unsigned char h, l;
h = pwm >> 8; // inhalt um 8 bit verschieben
l = (pwm & 0x00FF); // bit 9 und 10 abschneiden
outp(h, OCR1AH);
outp(l, OCR1AL);
}
Es funktioniert soweit auch richtig, nur das ich den Wert Null% nicht
ganz erreiche. Ich habe immer noch einen ganz kleinen Peak auf meinem
Scope. Auch wenn ich
outp(0x00, OCR1AH);
outp(0x00, OCR1AL);
schreibe, sehe ich noch einen kleinen Peak, so als würde mein minimum
pwm 1 sein. 100% wird dagegen erreicht.
Was kann das sein ???
Danke schon im voraus.
Mattias