Re: Multiplexing LEDs - calculating resistor value
- From: John Fields <jfields@xxxxxxxxxxxxxxxxxxxxx>
- Date: Tue, 27 Jun 2006 05:06:16 -0500
On 27 Jun 2006 01:42:32 -0700, "roxlu" <diederickh@xxxxxxxxx> wrote:
Just to make clear what you mean here...... I'm driving the matrix like
this: At start I make the first column (vertical) high. Than I set
which of the eight LEDs (the "row") must be turned on. This is how I'm
driving the matrix now.
---
That's the problem.
You need to consider the array as 8 rows with 48 LEDs in each row,
like this: (View in Courier)
COL48>-----------------------------------//----------+
|
COL02>----------------------+ |
| |
COL01>-------+ | |
| | |
[R1] [R2] [R48]
| | |
| | |
+5v>---------|----+---------|----+-------//----------|----+
| | | | | |
| E | E | E
+--B PNP1 +--B PNP2 +--B PNP48
C C C
| | |
[R49] [R50] [R96]
| | |
ROW1---+----------|---+----------|------//-----+ |
| | | | | |
+-[LED001]-+ +-[LED002]-+ +-[LED048]-+
| | |
| | |
| | |
ROW2---+----------|---+----------|------//-----+ |
| | | | | |
+-[LED049]-+ +-[LED050]-+ +-[LED096]-+
| | |
| | |
| | |
ROW8---+----------|---+----------|------//-----+ |
| | | | | |
+-[LED337]-+ +-[LED338]-+ +-[LED384]-+
Each of the column lines goes to one of the outputs of six cascaded
8 bit serial-in parallel out shift registers which are used to shift
and latch data onto the column lines.
At the same time data is latched, the row driver corresponding to
that data is enabled, causing ever how many of the 48 LEDs in that
row that are supposed to light up, to light up.
Then you shift the 48 bits of data data for the next row into the 48
column lines and enable that row driver, and on and on, like that,
endlessly.
I haven't shown it above, but the rows will be connected to the
collectors of the NPNs or NMOSFETS described in an earlier post.
For 8 lines you'll probably want to use something like an HC238 to
do the decoding, so your total load on the µC will be 6 I/Os:
clock, data, and latch for the shift registers, and the three
address bits for the decoder.
The end result of all this is that instead of shifting in 8 bits at
a time to the rows and then multiplexing 48 columns, you're shifting
in 48 bits of data to the columns and multiplexing the rows, which
will allow you to run the LEDs much brighter than you could the
other way.
--
John Fields
Professional Circuit Designer
.
- Follow-Ups:
- Re: Multiplexing LEDs - calculating resistor value
- From: John Fields
- Re: Multiplexing LEDs - calculating resistor value
- References:
- Multiplexing LEDs - calculating resistor value
- From: roxlu
- Re: Multiplexing LEDs - calculating resistor value
- From: nospam
- Re: Multiplexing LEDs - calculating resistor value
- From: roxlu
- Multiplexing LEDs - calculating resistor value
- Prev by Date: Re: how do bad contacts affect (falling) edges
- Next by Date: Re: Multiplexing LEDs - calculating resistor value
- Previous by thread: Re: Multiplexing LEDs - calculating resistor value
- Next by thread: Re: Multiplexing LEDs - calculating resistor value
- Index(es):
Relevant Pages
|
Loading