Die sichtbaren/störenden Interferenzen lassen sich vermeiden, wenn du
als Common-PWM-Frequenz die Frequenz der Einzelkanäle mit der Anzahl der
Farbabstufungen multiplizierst. Wenn z.B. die Einzel-PWM mit 256 Hz
läuft und 256 Abstufungen hat, dann muss die Common-Frequenz 65536 Hz
betragen. Wie viele Abstufungen dann noch möglich sind hängt von der
Leistung des µCs und deiner Fähigkeit zu optimieren ab.
Natürlich müssen die PWMs synchron laufen und die Pulslängen vernünftig
gewählt werden, was aber kein Problem sein sollte.
Ich denke aber nicht, dass das viel bringen wird. Die Logik für die
Farbmischung RGB -> R'G'B'X' ist nicht trivial, da du um eine Division
nicht herumkommen wirst. Die Farbauflösung im dunklen Bereich erhöht
sich zwar drastisch, aber nur so lange alle Kanäle dunkel sind. Die
eigentlich interessanten Nuancen von kräftigen Farben (z.B. starkes Blau
mit Grünstich) sind damit leider immer noch nicht möglich.
by the way:
X' = max(R, G, B)
R' = R / X'
G' = G / X'
B' = B / X'
(für X' = 0 -> R', G', B' = egal)
Rückweg zur Probe:
R = R' * X'
G = G' * X'
B = B' * X'
Im unteren Helligkeitsbereich wird's schwierig mit den ziemlich kurzen
Strompulsen zu arbeiten die sich aus der Interferenz ergeben. Ich denke,
dass die Linearität darunter leiden wird.
Trotzdem viel Spaß noch bei deinem Projekt!
Gruß
Kai