dc42:
fungus:
The CPU spends most of its time generating a clock output on a pin at about 4MHz (the tlc5940 needs a clock signal for the PWM). That's 100% in my book...Why not use one of the 2 counter/timers in the ATtiny85 to generate the 4MHz clock?
V1.0 of the library did that... but using timers to generate the signals needs both timers and all five I/O pins to make it work. I wanted to get it down to three pins so I could attach a couple of potentiometers/switches/whatever. You could even use a timer to play music on one of the other pins if you wanted to.
Besides, what would you do with all those extra CPU cycles?
In real life you'd probably only use 1% of them anyway (especially if you can't attach any external devices because you ran out of I/O pins - that kinda limits your processing to basic color sequencing).
Edit: I guess if you want to chain a lot of TLC5940s together the CPU power needed to update them all might become significant - even for basic color fades. In that case I'd dig out the v1.0 version of the library (and use a Tiny84 if I needed some free pins).