Currently I'm testing out a TLC5940 which I will eventually be using (3 of them) in a 16x8 RGB matrix. I have it connected like this right now with a 74HC595 and NPN transistor switching the anodes with a 1/8 duty cycle.
I'm testing one row of 16 LEDs that are on only 1/8 of the time, so they appear dimmer right now. What I've read is that you actually overdrive the LEDs so they appear at their normal intensity. So, to do this I need to lower the resistor value on the TLC5940's IREF pin. The datasheet says that it can output 120mA/channel at with a 5v input. 120mA * 1/8(duty cycle) is 15mA, which would be good enough for the LEDs. From the IREF formula, that would be about a 330 ohm resistor. I removed the 2k ohm resistor and replaced it with a 330 ohm resistor, but the LEDs appear even dimmer, or just shut off. I then tried a 1k resistor and had the same results. I hooked up a 10k pot, and it increased brightness until about 1.5k when the LEDs went dim or shut off. I tried 3 TLC5940 chips, and all had the same results. The Arduino is being powered by USB.
Am I pushing the TLC5940 too far? Should I just use PNP transistors on the TLC5940 to switch that much current??
Let me know if I can clarify more.