Hallo Ubimbo,

ich hab ich mir schon angeschaut. Die werden z.B. beim Arduinome verwendet http://en.wikipedia.org/wiki/Arduinome
Diese können aber soweit ich wei kein PWM. Fallen also weg

Mittlerweile ist mir noch folgendes eingefallen:
1.Die Belastbarkeit der PIN Outs des AVR sind unerheblich, da sowieso alles entweder an den ULN oder an den 75HC595 hängt
2.Die Pins des 74HC595 sind bis 35mA belastbar. Gesamtbelastbarkeit liegt bei 500mW für den Chip.
3. Natürlich brauche ich Vorwiderstände. die ULN2803 haben diese nicht eingebaut, da es nur ein Darlignton Array ist.
4. Es wäre Vernünftiger den AVR an 5V laufen zu lassen (um die 16Mhz problemlos zu erreichen) und ein eigenes Netzteil für die LEDS auszulegen, welches sinnigerweise mit 3.3V läuft. Damit würde ich am wenigsten Leistung an den Widerständen verheizen.
Ist das überhaupt problemlos möglich? Ich denke in der aktuellen Variante müsste ich dann die 74HC595 mit 3.3V versorgen. Ist der 5V Pegel des AVR dann ein Problem?
Wie erzeuge ich die 3.3V am sinnigsten?

Fazit:
Ich gehen davon aus wenn ich zwischen die 74HC595 und die LEDs Vorwiderstände löten würde würde das funktionieren. Zwar hart am Limit der 74HC595, aber es würde wohl gehen.

Da ist Optimierungspotential da.
Da meine Software extrem flexibel ausgelet ist und beliebige Würfelgrößen unterstzützt wäre es schön da noch etwas mehr Spielraum zu gewinnen. Schön wären vor allem ICs zur Ansteuerung, die PWM selbst können. D.h. ich gebe über I2C, SPI etc den Wert vor und der IC berechnet PWM dafür.
Je mehr Logik ich in ICs auslagere, desto weniger Rechenpower benötige ich im AVR.
Ergo: Je mehr Logik außerhalb, desto mehr Leds können berechnet werden.

Die elektrischen Grenzen der Bauteile machen mir allerdings noch deutlich mehr sorgen.

Was man also bräuchte wäre einen Baustein wie den Max7221 im Dil Package (kleiner schwarzer Käfer mit vielen Beinen) der am besten über I2C angesteuert wird un PWM kann. Kennt da jemand was?

Dann bräuchte man auch so gut wie keine weitere Externe Hardware zur Ansteuerung und könnte problemlos mit 5V fahren.

Gefunden habe ich hierzu den MBI5030. Das ist ein 16 Kanal Led Treiber mit 12bit PWM! WOW!!!
Davon 3 Stück und man hätte schon die komplette PWM Sache abgedeckt und würden den Atmega damit nicht belasten.

Leider hat der Chip noch einige Nachteile:
-SPI wird unkonventionell angesteuert. Da is auch nix mit Hardware PWM
-Benötigt einen externen Takt mit maximal 8Mhz =>woher nehmen. da braucht man wieder Hardware... Ist aber ein kleines Problem. könnte man nen Atmega48 nehme. die kosten ja kaum was und können das Taktsignal ausschleifen.
-Löst nicht das Problem mit dem Ebenenmultiplexing
-45mA maximaler Ausgangsstrom... Naja geht bei 1:4 Multiplexing wohl, aber auch bei mehr noch?
-SMD Package (SSOP24). Wenns da nen Dil Adapter gäbe wäre das kein Problem

Und dann gibts da noch den TLC5940!!!
Dieser scheints quasi für meine belange gemacht zu sein!
-Dil28 Package
-12Bit PWM
-16 Kanal LED Treiber
-120mA maximaler Ausgangsstrom pro Kanal! Das ist super und sollte sogar für 1:10 multiplexing noch funktionieren!
Der Chip scheint außerdem keinen externen Takt mehr zu benötigen.
Hier wird er verwendet:
http://www.thebox.myzen.co.uk/Hardware/Mini_Monome.html

Das Ding hat nur ein Problem. Der Chip scheint zwischen 7 und 8 Euro zu kosten....... Das ist starkes Stück. Eventuell bekommt man da Samples bei Ti? Wenn der Chip für mich taugt werde ich mal versuchen dort ein paar als Samples zu bestellen.

Stellt sich nun die Frage ob der ULN2803 geeignet ist für mein vorhaben. der kann wohl 500mA pro Kanal.
Meine Rechnung ergibt nun
16*3*80mA=3680mA...
oha....
Da drängt sich doch die Frage auf, ob ich das nicht besser diskret mit Mosfets aufbaue?
Mit denen habe ich allerdings keine Erfahrung. Welche kostengünstige Lösung würde sich anbieten?

So das war nun anstrengend, aber ich möchte ja zu einer möglichst guten und skalierbaren Lösung kommen. Ich zeichne kurz noch nen Schaltplan zu meinen überlegungen

Gruß Tim