Pages: [1]   Go Down
Author Topic: Modifiying TLC5940 Library?  (Read 2260 times)
0 Members and 1 Guest are viewing this topic.
Keynsham, UK
Offline Offline
Full Member
***
Karma: 0
Posts: 224
I like for loops and walks on the beach,
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm looking into using the TLC5947 [a 24 channel PWM driver] which is similar to the TLC5940 chip. I'm not a hardcore programmer and don't have the knowledge to run this chip raw. So I was wondering if It would be relatively easy to modify the TLC5940 library to work this chip?

Thanks, /me
Logged

"C++ : Where friends have access to your private members." - Gavin Russell Baker

Brooklyn, NY
Offline Offline
Jr. Member
**
Karma: 0
Posts: 92
Webduino / RGB LED Shield
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Looking at the data sheet, the 5947 has the same programming interface as the 5940, just more output bits.  The existing library should work fine with it.  It would just be treated as two 5490's with the last 8 bits ignored.  If you chain two of them, you'd treat them as three 5490s.  The main difficulty is that this chip is only available as surface mount, but if you can handle that, you should be good.
Logged

SF Bay Area
Offline Offline
Edison Member
*
Karma: 11
Posts: 1244
Arduino Ninja
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

The TLC5947 doesn't really need a library. It's much simpler than the TLC5940 because the '40 requires an external grayscale clock and a BLANK signal every 4096 clocks. The TLC5947 is fire-and-forget, you simply shift 288 bits into it, and pulse the latch pin.

This is my TLC5947 board:

« Last Edit: April 08, 2009, 05:52:35 pm by macegr » Logged

Unique RGB LED Modules and Arduino shields: http://www.macetech.com/store

Keynsham, UK
Offline Offline
Full Member
***
Karma: 0
Posts: 224
I like for loops and walks on the beach,
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I see. OK this sounds stupid, but could you link me to some info about 'shifting bits'. Just so I'm going in the right direction.

/me
Logged

"C++ : Where friends have access to your private members." - Gavin Russell Baker

SF Bay Area
Offline Offline
Edison Member
*
Karma: 11
Posts: 1244
Arduino Ninja
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

http://arduino.cc/en/Reference/ShiftOut
Logged

Unique RGB LED Modules and Arduino shields: http://www.macetech.com/store

Keynsham, UK
Offline Offline
Full Member
***
Karma: 0
Posts: 224
I like for loops and walks on the beach,
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks for that.

@ Ben Combee

I've just ordered 5 samples from Texas Instrument [thanks for all their samples to a poor student] and am going to start by soldering wires to one chip and shrink wrapping the connections. Then I plan to install it into a 28-Dip connector so I can just put it into a standard breadboard with no worries.

Might post details when complete.

/me
Logged

"C++ : Where friends have access to your private members." - Gavin Russell Baker

SF Bay Area
Offline Offline
Edison Member
*
Karma: 11
Posts: 1244
Arduino Ninja
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

What part, exactly, do you plan to shrink wrap? It comes in either QFN or HTSSOP, the wires will be 0.5mm or 0.65mm apart respectively. That's not too different from what I did with a 0.5mm QFN-16 a while ago...it was very difficult:


« Last Edit: April 08, 2009, 07:10:47 pm by macegr » Logged

Unique RGB LED Modules and Arduino shields: http://www.macetech.com/store

Keynsham, UK
Offline Offline
Full Member
***
Karma: 0
Posts: 224
I like for loops and walks on the beach,
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm planning on doing this with the HTSSOP package. I've seen this sort of thing done before and I will have five free attempts so...

Like this:




smiley-grin

/me
« Last Edit: April 08, 2009, 07:26:43 pm by PA_Skins » Logged

"C++ : Where friends have access to your private members." - Gavin Russell Baker

Keynsham, UK
Offline Offline
Full Member
***
Karma: 0
Posts: 224
I like for loops and walks on the beach,
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

FYI: I'm planning on using the TLC5947 and a Darlington Array with the Arduino to run an LEDSee.com RGB LED Matrix. Might make a shield [like Halley or Madworm's] but with this implementation instead.

/me
Logged

"C++ : Where friends have access to your private members." - Gavin Russell Baker

SF Bay Area
Offline Offline
Edison Member
*
Karma: 11
Posts: 1244
Arduino Ninja
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

That looks like it may be a 0.8mm pitch QFP, a lot easier to solder than the HTSSOP. Seriously, when you get the samples, you'll see how small the spacing is. Soldering 32 wires to that is going to be quite difficult. You might want to find or make an adapter board.

But if you manage to do it, definitely post pics!
Logged

Unique RGB LED Modules and Arduino shields: http://www.macetech.com/store

Keynsham, UK
Offline Offline
Full Member
***
Karma: 0
Posts: 224
I like for loops and walks on the beach,
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

OK, so I guess a breakout board will be required!

/me
Logged

"C++ : Where friends have access to your private members." - Gavin Russell Baker

0
Offline Offline
Newbie
*
Karma: 0
Posts: 31
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I am interested in using the TLC5947 also so I designed a breakout board.
http://www.batchpcb.com/index.php/Products/20823

It can only sink 38ma, how would a transistor be wired to trigger larger currents?
« Last Edit: April 22, 2009, 09:04:30 pm by RazorConcepts » Logged

Pages: [1]   Go Up
Jump to: