Wird nicht funktionieren, denn du hast nur 10 Takte Zeit Pro PWM Wert. Im worstcase (Werte gleich an verschiedenen Ports und nächster Wert +1) wird es nichts.
Selbst mit Assembler wird es nichts, gerade wegen dem worst case. (kam auf ca. 10 Takte pro Port) für die ISR des Timers du hast aber wie gesagt nur 10 Takte Zeit, dann ist der Wert falsch.
DMA sollte auch nicht gehen, da nicht zuverlässig genug (CPU ist vorrangig auf dem BUS)
Abhilfe könnte ein externer I2C 16bit LED Controller schaffen.
- leider nur 12bit http://www.ti.com/lit/ds/symlink/tlc5946.pdf sollte es aber auch mit 16bit geben
Lesezeichen