Hallo, ich habe die angehängte, einfache PWM geschrieben, womit LEDs angesteuert und später auch gefadet werden sollten. Die PWM stellen eigentlich nur die paar Zeilen im Timer 0 dar, jedoch habe ich folgendes Problem: Die Leds bleiben zu hell, bedeutet wenn ich als Vergleichsvaribale 10 eingebe ist praktisch kein Unterschied zu 200 erkennbar, bei 1 werden sie schon sichtbar dunkler, bleiben jedoch immer noch viel zu hell. In der Main werden nur die Ports initialisiert und der Timer 0, dort sollen später mal die Anweisungen fürs faden landen. Ich arbeite mit einem AT Mega 8535 mit einem 16Mhz Oszillator. Hat irgendjemand eine Idee wo der Hund begraben liegt? Grüße aus Bayern Meni
Mess mal aus, wo du rumregelst. So ne LED für If = 20mA leuchtet vermutlich von 20mA bis 5mA gleichhell, dann gehts erst abwärts, dafür umso schneller...
Ein großes Problem beim Debuggen ist, dass ich kein Oszi habe, aber rein vom Logischen her dürften 10µS Anphase und 200*10µS Ausphase doch recht dunkel sein.
Hmm, ich komme nicht auf 10 µS, sondern nur auf 5, oder hab ich was übersehen?. Das ist allerdings eine sehr hohe Timer-Frequenz, die den Prozessor schon sehr stark auslasten dürfte.
Danke an alle, die sich mit meinem Code beschäftigt haben! Jetzt habe ich nochmal nachgerechnet... und bin auf Folgendes gekommen: #define Timer_0_data_reg 236 //10us bei 16Mhz Ändert aber leider nichts an der Tatsache, dass die LEDs immer noch zu hell sind. Hat irgendwer noch eine Idee oder sieht jemand meinen Fehler?
Nachtrag: Wenn ich die Modulation wie im Anhand nachstelle, kriege ich eine Leuchtstärke welche ich auch erwartet habe.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.