Hallo, folgende Frage, ich habe hier eine Hardware mit einem ATXMEGA128A3 liegen, an Port B ist eine RGB-Led angeschlossen und natürlich stimmen die Vorwiderstände nicht (für alle Farben der selbe Wert), sodass die Mischfarben nicht stimmen, weil z.B. grün alles überstrahlt. Ich würde das jetzt gern über eine PWM (ein festes Tasverhältnis für die grüne LED) lösen. Nach lesen im Datenblatt fürchte ich aber, dass das hier an PortB nicht autark über einen Timer geht. Kann das jemand bestätigen? Geht das dann nur über Interrupt oder gibt es einen "Trick"? Grüße, Alex
:
Bearbeitet durch User
Alexander H. schrieb: > stimmen die Vorwiederstände nicht Seit mehr als 10 Jahren hier angemeldet und kann immer noch nicht Widerstand richtig schraipen.
Entschuldigung, das kann im Eifer des Gefechts schon mal passieren. Aber ich hab's für dich mal korrigiert. Du bist sicher noch nicht so lange dabei, sonst hättest du den Unterschied zwischen konstruktiven und nicht konstruktiven Beiträgen schon begriffen.
:
Bearbeitet durch User
Alexander H. schrieb: > Geht das dann nur über > Interrupt oder gibt es einen "Trick"? Du könntest eine Software-basierte PWM machen oder aber du "bastelst" die deine PWM selbst indem du von einem Timer dessen Overflow-Interrupt benutzt, um den gewünschten PWM-Pin zu reseten und den Compare-Match-Interrupt des gewählten Timers dazu nutzt, den gewünschten PWM-Pin zu toggln.
Das hatte ich schon befürchtet. Am Port D erzeuge ich über den Timer eine Frequenz für einen Beeper ganz ohne Interrupts und hatte jetzt die leise Hoffnung, das hier auch so machen zu können.
Wieso befürchtet? Interrupts sind nicht wirklich schwer, ganz im Gegenteil. Die sind ne coole Erfindung. Nur keine falsche Scheu davor. ;)
Befürchtet ist vielleicht das falsche Wort. Ich hatte gehofft, es geht auch ohne. Jetzt realisiere ich es halt mit Interrupt. Ist auch okay.
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.