Shared publicly  - 
+Matt Pandina
So now that I have all of the parts and am actually starting to build it, I got pretty much stuck at the phase after I wired up the #TLC5940 :p I think my best bet may be to use your library (demystifying the tlc5940 | artcfox) since your chapter 9 example is so similar to mine. I could have sworn there was a post on reddit where you explained how to set your library up in arduino, but after looking through lots of posts, I cant find it anymore.

I assume step 1 is the programmer you mentioned to switch the fuse? (sorry if you read this same post in another comment section, it was kinda hidden so I wasnt sure :p)
The purpose of this site is to provide information about using an Atmel ATmega328P with a Texas Instruments TLC5940 16-channel LED driver. The code provided should be directly compatible with the fol...
Matt Pandina's profile photoPeter Edwards (sweetlilmre)'s profile photo
My library is compatible with the Arduino hardware, but not the Arduino software. If you have a programmer, you can connect it to the 6-pin ICSP header on the Arduino board, and program it as if it were just a plain old ATmega328P development board, following the instructions in the Demystifying the TLC5940 book.

If you want to become familiar with how everything works, you can start at the beginning and go through each chapter, and that way you can test it at every step of the way. If you do it that way, it will tell you exactly when to program the fuse.

You can use the RGB LEDs for testing the non-multiplexed version, just hard-wire the red anodes to power. Then once you are ready, you can just swap out the tlc5940.c and tlc5940.h from ch7, (and the Makefile), since it is an exact drop-in replacement, and add the MOSFETs to the anodes, and you should be good to go.

Then all you'd have to do is customize the code inside main.c.

If you really want to use the Arduino software framework, you might try to rework a port of my library that someone else created: but you'll want to get rid of the shift-register stuff, and use the same multiplexing code that I use in ch9. Since you're a software developer, I would suggest doing things in straight-up C, rather than using the Arduino framework.

Good luck!
Add a comment...