How do large LED Matrix Displays work?

Hello,

I want to make a big 64x16 LED Matrix display out of 16 8x8 Matrix modules. My Idea was to use 8 74HC595 Shift registers for the columns and two shift registers for the rows, with mosfets to drive the rows because if all 64 Leds in one row are turned on they have to switch a really high current.

My problem is now, if i have 16 rows to go through the brightness should only be 1/16 of the original brightness, so i wondered how these big LED Matrix displays work if they are way larger than 64x16, which would produce extreme high currents at the rows and a really low brightness if they would be designed with the circuit i thought of for my display

Is there a better way to design the circuit for the 64x16 display than the way i described?

Yes - use multiple Max7219/8x8 LED modules.
Each MAX7219 takes of the multipexing for its LEDs.
See the Parola.h library for controlling them.
Member Marco has done nice work in keeping the library up to date and capable.

crfx:
Is there a better way to design the circuit for the 64x16 display than the way i described?

Yes, you really don't want to muck around with 74HC595s, they are not useful at all. :roll_eyes:

Just use these modules:

They stack and chain together so they are driven by only three pins, you only update them when you have new data.

And you can get them in yellow or green, even blue.

Your post implied the possibility of constructing them yourself. Really, really bad idea! :astonished:

To try to answer your first question, how do large panels work:

  • They use chips that source/sink more current. 74hc595 can only source/sink 70mA, shared between 8 LEDs that's only ~8mA each.
  • They keep the number of rows to be scanned to 8 or 16 by dividing the panel into sections and scanning multiple rows at once.
  • They overdrive the LEDs by using LEDs that are specified to do that, for example 80mA for 10us at a time with 90us gaps between pulses.

actually i wanted to build something on my own again, to get back into soldering and desining circuits and realizing them on pcb boards and i thought this could be a good project for practising this, but if the shift register design is this bad i think i will have to find another solution :confused:

I also read about the max7219 chip before, but when i searched for it i only found pretty expensive offers like 5€ or more per chip, which would add up to 80€ for 16 modules and this is a bit too much for me

well i searched again after i read your answers, because it seems to be a really easy solution, and found actually offers like this here on ebay where one single chip comes to about 52 cents, wich would be pretty acceptable. This is the needed max chip right?
I only wonder why there are such expensive max chips like up to 10€ per piece and then these china offers... do you think they are really bad or will break fast or what could be the problem of them?

There are many many "fake" max7219 chips out there. All the cheap Chinese modules use them. Most of the more expensive modules use the fake chips also. Genuine Maxim 7219 chips cost €10 for just the chip alone. But the fakes seem to be fine. Everyone uses them, and stories of any problems they cause are pretty rare.

But if you want to design your own circuit, not using max7219, that is also possible, but more of a challenge, if that is what you like. You can use shift registers, even 74hc595, but you will need driver circuits (transistors or whatever) on both the anode and cathode sides to get more current. Other shift registers are available which can handle much more current, such as tpic6b595. There are 16 channel led drivers which work like shift registers, too.

So it's up to you. What is more important to you, the result, or the learning process?

well i guess i will use the cheap Max7219 chips if they are not gonna make any problems due to their cheapness, making the board etc should still be enough work to do