Would this LED array work?

Hi all,

I am thinking about buying an arduino, but before I buy anything i would just like to know whether this LED array I designed would be any good.

The 4022 is a counter that outputs 5v at 8 pins, one at a time, changing the outputed pin every clock signal. This means the arduino can update the array one line at a time, taking advantage of persistence of vision to display an image. While i know the result is almost identical to using a MAX7219, the advantage is that by adding a larger counter, or an array of counters the matrix could easily be expanded.

What I would like to know is whether or not this display would be able to update fast enough for it to not look flickery. How many modules of 8x8 could i have controlled by the same system before it would begin to look flickery? I am not 100% sure but i think at least 20hz refresh rates are required for decent persistence of vision.

Having not built one myself I cannot say. But I can wager that it would probably work. The hardest part for your design is that you would have to have the arduino also triggered by the clock, but that should be easily doable with interrupts. I suppose that the only other problem you might encounter is that if the arduino does run slightly too slow you might get a large enough drift between the clock and the Ard. such that after a time your display would be completely out of sync with itself. Though this could be easily solved by adding an extra pin to the 4022 that would trigger a second interrupt to reset the internal count of the ard.

Some good switching transistors and you could probably get something to work.

Though I will speak for the benefit of the Max chip: (this time from experience) the ability to update one row of the leds at a time lends itself very nicely to a complex animation routine running on the Ard while the Max takes care of all the blinking. Yes you are limited to 63 leds / max7219 chip. I am not sure what the program you are seeking to display will do, but when you add on programming code to cycle through the display and blink each led on top of it you will start to see some lag.

The ard might not be for you, but think through what you are trying to do and try not to reinvent the wheel in the process ;-).

The clock signal is simply a signal sent from the arduino to the 4022 everytime the ard wants the array to go to the next row. That should work out ok, the only thing that was worrying me was how fast people thought the ard would be able to refresh a whole 8x8 array with this method.

I (hopefully) have 4 sample Max7219s on the way, the only reason I was wondering about the 4022s is the possible larger arrays, and the abundance of shops selling 4022s. How do most people get their 7219s? Just from samples on the site?

One final Q, how many pins are required to run a 7219?

The max7219 requires three pins to operate: clock, data-in, and load. Mine is currently pulling +5v and Gnd from the Ard power outputs on the other side too.

The basic idea with the 7219s is that you send it two bytes through data-in and then raise load. The first of the two bytes is a memory register and the second is the value that gets stored in that memory register. There is one register for each row of leds (rows A-G) and the byte of information stored there represents the lights that are on in that row (ie. a 01100101 would light up leds at each 1). But the benefit is that the 7219 cycles through the led array for you at rapid pace -- you just send it a word when you want to change what it is doing.