[dorkbotdc-blabber] Re: LED Cube Workshop - use an Arduino?
Tim Slagle
tim at slagle.org
Sat Dec 8 23:26:55 EST 2007
Yeah, Make seems allergic to schematic diagrams but what you
wrote looks right to me.
--Tim
--- "Peter S. May" <me at psmay.com> wrote:
>
> I've so far had decent luck buying LEDs and certain other
> electronics
> items (CR2032 coin cells, for example) from the various
> China/Hong Kong
> (gray market?) sellers. It just happens that both LED orders
> I've
> placed came from giorgio11185, aka "Asia Engineer". No
> complaints so
> far, other than the 17-20 days it takes to ship since it's not
> domestic,
> and at least in my experience 12 cents shipped (lot of 100) is
> a good
> price for a high-brightness white LED. Some come with free
> resistors;
> see the auction description if you want to ask for resistors
> adjusted
> for 5V (the default is often 12V).
>
> Your mileage may vary, but for me it's been unproblematic and
> worth the
> wait.
>
> (As with any LED, take note of both spot brightness (mcd) and
> viewing
> angle (degrees) when picking one out.)
>
>
> Incidentally, what is this way you have to drive the LEDs
> "without
> needing anything fancy"? Is it different than the
> multiplexing method
> used by Bre and Mitch?
>
> Getting pedantic for the benefit of the unaware, so please
> skip with my
> apologies if this doesn't include you. :-)
>
> Somebody who's done the Make version of this project, please
> tell me if
> the following description is correct--I took a look at the PDF
> for the
> Make mod of MiniPOV for the 3x3x3 cube, and it wasn't trivial
> to decode.
> But from what I can tell they took the 8 LED outputs already
> on the
> kit, added one more by sticking a resistor onto one of the
> other I/O
> pins, and then implemented the multiplexing by using three
> more of the
> I/Os as a ground select. The result looks a bit like the
> following
> ASCIImatic:
>
> . (X,Y,TOP)
> . XY ---/\/\--+->|-------------------- /TOP
> . | (X,Y,MID)
> . +----->|---------------- /MID
> . | (X,Y,BOT)
> . +--------->|------------ /BOT
>
> Where XY is _each_ of
>
> . NW N0 NE
> . 0W 00 0E
> . SW S0 SE
>
> It's wired up such that all LEDs of a given Z share a cathode
> and all
> LEDs of a given XY share an anode. That adds up to 12 I/O
> pins (9 to
> select XY and 3 to select the Z layer) and 27 LEDs (one per X
> per Y per
> Z). A given LED on the cube will be lit if and only if its
> anode (XY
> pin) is high and its cathode (Z pin) is low.
>
> The firmware draws the pattern one Z layer at a time by, for
> example,
> setting all Z pins high to clear, setting the XY pins to the
> desired
> pattern, and then setting the desired Z pin low. By cycling
> through the
> layers faster than the viewer's flicker threshold, it appears
> that all
> layers are being drawn at the same time.
>
> So, assuming the above is true, as long as the Arduino has 12
> available
> outputs it can pull the same trick.
>
> More garbage on this topic in the PS.
>
> Was this what you had in mind? If not, what?
>
> Word
> PSM
>
>
>
> Post Scriptum:
>
> This is me getting (even more) carried away...
>
> There's even a means of addressing 3x3x3 = 27 LEDs (or as many
> as 30)
> using only 6 pins, as long as each one is tri-state-able. But
> this
> method can typically only address one LED at a time (as
> opposed to one
> layer) and it majorly complicates the firmware. (See also
> "Charlieplexing".)
>
> An unrelated project I have going on is a little heavy duty
> for any sort
> of multiplexing and instead uses a small fleet of 74HC595
> shift
> registers. For an immense number of LEDs (over 60 in my case)
> it's a
> bit more straightforward and can use as few as 3 pins for an
> arbitrarily
> large number of LEDs--as long as you buy one 74HC595 for every
> 8 LEDs.
>
........................................................................
> .......dorkbot dc: people doing strange things with
> electricity.........
> ................... http://dorkbot.org/dorkbotdc
> .......................
>
........................................................................
>
More information about the dorkbotdc-blabber
mailing list