# An Intro to arrays

A way to control more LEDs than you have pins in your chip!

Update: I added a video with my grad cap hacked with 64 individually addressed LEDs! This multiplexing/matrixing/array-ing sure is fun :3

This is pretty barebones so far. Be assured, more infomation will be added as I push along.

First I started with a really basic setup: 16 LEDs controlled by 16 pins. This is great, but leaves no pins left for output! Being limited makes me antsy, so I sat down and figured out how to get more.

Here is the code(first video):

main:

for b0 = 0 to 7
high b0
pause 250
low b0
next b0

for b0 = 0 to 7
high pinsc b0
pause 250
low pinsc b0
next b0

goto main

Controlling 16 separate motors/lights/etc. is great and all, but what if you want to do more?

I removed one 8 LED output bank and set up two of the free pins as "enablers". The 8 led pins are pulldown pins, and each enabler pin supplies a logic on/off to a 2N3904 Transistor to supply a +5 voltage.

A small change in code, and we are back in business! (second video)

main:

high pinsc 0
for b0 = 0 to 7
high b0
pause 250
low b0
next b0

low pinsc 0 high pinsc 1

for b0 = 0 to 7
high b0
pause 250
low b0
next b0
low pinsc 1

goto main

10 pins to control 16 LEDs? Cool!

This can be worked further. How many can we control with 16 pins?

With mathematics, all you have to do take the total number of pins you can use, divide by two, and then square that number.

With 16 pins: 16/2=8, 8^2=64! That's pretty sweet if you ask me.

This is just with one Picaxe 28x1 chip, what could we use to multiply the out pins with other chips to control a multitude more?

## Comment viewing options

Hey Z, our robo-babe,

Are we never going to see you back on LMR? People still talk about you :)

That graduation cap is pretty awesome :) That'd make a great robot after you're done with it. It could drive around your house and find college degrees to obtain.

Dan

That would be quite interesting.

I think what I'll do is take the cap and hang it on the wall of my workspace, as soon as I'm given one other than the dining room :P

This is the most impressive LED array I've ever seen, must have cost a fortune in LEDs.

16x16x16=4096 RGB LEDs!

Although this is probably more in our price range, driven by a Pic processor not a super computer!

Well, if one picked up 4 chips that buhatkj suggested, we'd have a total of 64 ports out.

so.... (because I love numbers) 64/2 = 32, 32^2=1024

Still being controlled by a picaxe, would be quite impressive ^_^

Just out of curiosity, do you work out a schematic first or do you just do it in your head? I don't remember any schematics with Mr. Tea.

I did it in my head. I rarely put stuff on paper, and I think that's what gets me in trouble most times. I did do one schematic, just for the picaxe part, because I had to attach the box to the back of the machine, and needed to color-code my wires.

I don't do schematics either. I solder first and ask questions later. I usually test after each chip is put in place though. For example I solder a chip, power supply, and stereo socket into place and see if I can transfer code. Then solder in a motor driver and see if it will make motors work, then...
I won't solder until I've set up a schematic. Breadboarding is easy, but I hate HATE H.A.T.E. desoldering. I try to atleast get something on paper that shows what connects to what, even a small scribble helps :P
This may kill the fun, but it may start some new fun: http://letsmakerobots.com/node/131