Also das mit 32 Ports per Software PWM ansteuern sollte sich hinkriegen lassen.
Mit 8MHz und 3LED's mit 256 Stufen hab ich sowas kürzlich geproggt.
Das Programm müsste halt nur auf 30LED's aufgemotzt werden.
Die PWM Frequenz liegt bei mir bei 125Hz, also hoch genug um nicht zu flackern. Mit 16MHz sollten somit auch 250Hz möglich sein
Die einzelnen Farben müssten dann halt nacheinander abgearbeitet werden. Man käme dann also auf eine Flackerrate von ca. 83Hz pro Farbe.
In 2 oder mehr Zeilen Multiplexen würd ich die Geschichte aber dann nicht mehr, sonst kommst Du unter 60Hz- also in den Flacker Bereich.
Ich bin auch der Meinung das das eigentliche Problem die Datenmenge für mehrere solcher Einheiten sein wird.
Bei der Portvergabe solltest Du auch an freie Pins für eine Adressierung und die Datenschnittstelle bedenken.
Ein Controller mit noch mehr Ports (ATMEGA128) wär vermutlich noch besser, aber auch wesentlich teuerer.
Wie möchtest Du den Datenaustausch machen SPI, I²C oder seriell ?
Wie willst Du den Datentransfer managen? Adressierung, alle kriegen alles oder was komprimiertes?