# 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

For added fun, check out Microchips MCP23016, 23017 or 23018, which is 16port I/O expanders for I2C, capable of 3 different speeds. It also exists in a serial version, which can run faster than the I2C editions:

http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=11034&mid=11&lang=en&pageId=79

Also, you can check out the 74HC595, which is an 8-bit serial latch, but they are output only. There is an equivalent input chip, which I can't remember the name of.

So many new chips to experiment with!

This walkthrough was mainly to highlight using less pins to get more out with only one chip. Just interesting how many different ways there are to achive this :)

STOP RESISTING!

You want more chips!

My school as drilled into me finding the cheapest way to achive something. Companies look for that, so I keep training myself that way.

If I wasn't working towards a career in designing circuits, I'd say "to hell with it" and go the easy route :P

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

Hey Z, our robo-babe,

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