TLC5940 timer conflict

I have a program which now compiles clean for my code but there is an apparent conflict with using timers when also using the 5940 library. I want to have a timer generating interrupts that drive a routine that subsequently drives the 5940's. Is there a timer available on the Uno that is not used by the 5940? Or is there another approach I should be taking ?

TimerOne\TimerOne.cpp.o: In function __vector_13': G:\Arduino\arduino-0022\libraries\TimerOne/TimerOne.cpp:18: multiple definition of __vector_13'
Tlc5940\Tlc5940.cpp.o:G:\Arduino\arduino-0022\libraries\Tlc5940/Tlc5940.cpp:61: first defined here

this is the only error message I'm getting.

I want to have a timer generating interrupts that drive a routine that subsequently drives the 5940's.

So why do you need to have the 5940 library if you are going to write your own driver routine?

Look in the data sheet for the timers you have on the chip. But they are also used for things like the PWM outputs and the millis() timer.

I'm not writing my own driver. The timer I want will control precisely when the 5940 turns lights on and off.
I need the 5940 library to provide the control routines for the 5940 which I want to use as is.

The timer I want will control precisely when the 5940 turns lights on and off.

If you use the 5940 you can't control the precise time an LED will turn on. This is because the shift registers in the 5940 need loading with data and that needs to be synchronised with the PWM signals the 5940 is producing so the exact time of the light turning on is not something that can be arbitrarily controlled.

Mind you if you actually said what you were trying to do it would help.

OK, thanks for hanging in on this. I'm building a star wars like light saber which is a tube 30 inches long with 5 strings of 32 single color leds. Each string being a different color. My code is a simple form of list processor where each row of a matrix is a program element, e.g. all flashing in one direction and then single rows racing up and down. The timer I need has nothing to do with precise timing of the lights at all. It's pulses initiate each mini-step of a program element. So the timing does not even have to be precise, just close. If I can't find a suitable fix for 5940 and timers in the same sketch, I will probablyi resort to a 555 being the timer to trigger and interrupt and accomplish the same thing.
If you have an idea as to how to do 5940s and timers together, that would be a big help.

thanks

Ah so not so precise. Then what you need is the millis() timer, this gives the number of microseconds since switch on. It returns a long int. You put that into a variable plus the time needed for the next step, then in the loop() you check the current time of millis() and if it exceeds your variable value then it is time to do the next step.
For an example of this see the "blink without delay".

Thanks, I believe this will work just fine. I balked at first because I don't like tight loops, but I put a 1ms delay in to avoid any problems.