René K. schrieb:
> Mein aktuelles Problem bezieht sich auf Timer. Ich habe einen
> ATMega644A.
>
> Timer1 ist initialisiert auf Fast PWM und 16-Bit, damit versorge ich PD4
> (OC1B) und PD5 (OC1A).
> Mein Problem ist daß ich unbedingt einen dritten 16-Bit Channel benötige
> (für RGB), dann zwar noch einen vierten, aber da reichen dann 8-Bit.
Du meinst also PWM Kanäle. Hättest du mal besser so in die
Betreffzeile schreiben sollen.
> Gibt es da irgendeinen Trick oder Möglichkeit?
Der ATMega644 hat nur einen 16-Bit Timer. Und der hat nur zwei
Compare-Einheiten, kann also nur zwei PWM Signale erzeugen.
Am einfachsten wäre sicher, einen anderen µC zu verwenden, der mehr
PWM-Kanäle kann.
Sonst halt Software-PWM. Für LED braucht man nicht unbedingt 16 Bit, da
reicht auch weniger. Wenn wirklich 16 Bit Auflösung gebraucht werden,
dann am besten als BAM (Bit Angle Modulation). Wurde beides hier im
Forum schon x-mal durchexerziert.
Oder einen externen LED-Treiber, der die PWM selber macht und per z.B.
SPI gesteuert wird. Oder einen zweiten, dritten etc. µC als PWM-Treiber
programmieren.