4 digit 7 Segment display with Arduino with Maxim7221

Dear All, I Planning to make a 7 Segment LED Display board Showing item list of 80 items. I have to display value of each 80 line items in 4 digit, So thinking to use 4 Digit 7 Segment display. Driver IC will be Maxim7221. We know one Maxim7221 can drive upto 8 digits. So I have to use 40 no. of maxim7221.

example of board like;

Item 1 - 0000 (0000 is 4 bit 7Segment Display) Item 2 - 0000 Item 3 - 0000

. . . .

. Item 80- 0000

Now I have 2 Question?

  1. Which Arduino board you suggest me to adopt? ( I think 2 Mega, Master/Slave)

  2. Can I use Arduino single "Clk pin" for all 40 no. of Maxim7221 (Pin no. 13) ?

Thanks in advance

Anas Hasan

80 lines of 4 digits? Thats 320 digits, tons of almost everything. Do You have a budget for all that?

Planning to use 2 Arduino in a project is a common mistake many beginners make. Almost always the wrong decision. Can you explain why you think you need 2 mega?

I doubt any Arduino can drive this many max chips directly. You will need to use some buffer chips for the clock and latch lines. The max chips will buffer the data line by themselves, so no worries there. Maybe buffer the clock and latch lines for 5 groups of 8 max chips. You can do this with a couple of 74hc04 chips. Probably a good idea to use the hardware SPI for this: CLK and MOSI for the clock and data lines. SS is a good choice for the latch line.

Multiplexing things, no problem for an Arduino. The question I have is what update frequency You have?

IIRC the Maxim chips can be daisy-chained, so you could try to run all of them by three pins.

What are you making. Eight digit 7-segment displays with integrated MAX7219 are common/cheap ($2) on ebay. Leo..

Railroader: 80 lines of 4 digits? Thats 320 digits, tons of almost everything. Do You have a budget for all that?

Yes, Customer is ready to pay any amount...

PaulRB:
Planning to use 2 Arduino in a project is a common mistake many beginners make. Almost always the wrong decision. Can you explain why you think you need 2 mega?

I doubt any Arduino can drive this many max chips directly. You will need to use some buffer chips for the clock and latch lines. The max chips will buffer the data line by themselves, so no worries there. Maybe buffer the clock and latch lines for 5 groups of 8 max chips. You can do this with a couple of 74hc04 chips. Probably a good idea to use the hardware SPI for this: CLK and MOSI for the clock and data lines. SS is a good choice for the latch line.

2 reason for thinking for dual mega are

  1. my code contains (which successfully running) 2D array of dimension [400][12] (80x5=400), So dynamic memory error coming is coming in UNO (obviously), which will not come in Mega…due to its high memory

  2. As I said, 1 Max can run 2 no. of 4bit 7segment… 1 Max need 2 arduino port (Load (CS)) and Dout (if Clk PIN is common for all 7segments is possible?)… So 40 Max need 80 no. of Ports which is possible in dual Mega (Master-Slave)

*is there any issue come in Master-slave? I have never tried yet

*Can I use single arduino clk for all 80 4bit7Segments?

Railroader: Multiplexing things, no problem for an Arduino. The question I have is what update frequency You have?

update frequency will be after every 1 hour

Whandall: IIRC the Maxim chips can be daisy-chained, so you could try to run all of them by three pins.

Sorry I have no idea about it... but Sound good if 3 pins needed for all 7seg. Can u plz share any link, so I can go through with it.

Thanks

Wawa: What are you making. Eight digit 7-segment displays with integrated MAX7219 are common/cheap ($2) on ebay. Leo..

What are you making. Im making a School teacher display board... that school contains 80 teachers staff... So display board will show status of all teachers...in front of their names details like Class (0-12), Section (A,B,C,D,E,F) of respected teachers...

Eight digit 7-segment displays with integrated MAX7219 are common/cheap ($2) on ebay. Yes... but I have not seen Maxintegrated in 1" (inch) size digit display till date.. If you found plz share a link...

Thanks

Use the MAX7219 10 times, connect Clk resp Din together, connect 2 Arduino outputs. Use 10 outputs for CS, LOAD, (Chip Select). 80*7 bitar to shift, no problem with update requency. Managing the wiring, the project is doable.

Bin-Matloob: Sorry I have no idea about it... but Sound good if 3 pins needed for all 7seg.

Connect DOUT of each MAX7221 to DIN of its successor, all other pins are in parallel. I'm not shure how many CS/CLK signals a single Arduino pin can handle, but you could boost the fan-out with buffers, or use more than one of the chain arrangements to drive your 40 MAX7221s.

@Whandall Connecting Dout to next Din looks favourable to me also. @p Then You should connect all Clk together as well as Load. After clocking out the neccessary train out bits, issue one load pulse. Send the next train of bits, load them. It looks to me like setting up the LED driver requires one complete "train", loading the actual digit requires Another one.

Bin-Matloob: my code contains (which successfully running) 2D array of dimension [400]12, So dynamic memory error coming is coming in UNO (obviously), which will not come in Mega...due to its high memory

Where do you get the 5 from?

Why do you need 12 arrays in RAM at the same time?

Whandall: Where do you get the 5 from?

Why do you need 12 arrays in RAM at the same time?

5 array for teacher name,Day,Period,Class,Section

No big issue. How many displays You want to use is what matters as I see it. What info You show in the DSP array is Your business.

Railroader: No big issue. How many displays You want to use is what matters as I see it. What info You show in the DSP array is Your business.

I will show only 2, Class and section... for 2 output I can use 2bit 7segment but Classes are upto 2 digit also.. (11 and 12 class) so I have to 4bit 7seg. First two bits are for class, 3rd bit will show only Dash (__) and last will show section of class i.e. A,B, C....

one option is coming in my mind.... distribute 80 teachers in 4 Section... and each section drive by a seprate arduino... so 20 no. 4bit7seg will come in one section and 10 Max will required. I believe 10 Max is not big deal for Uno or Mega (20 Ports only per Section).... problem will come only I have to upload code in every arduino... but customer is saying... data will not update more frequently.. maximum after twice a year only... so every six month he have to update all four arduino...

This is some what easy and durable, also avoiding any unseen issues...

what so u you think dear @Whandall and @Railroader ???????????

The 'explanations' don't make sense to me.