Pages: [1]   Go Down
Author Topic: Cascading MAX7221 doesn't work as expected  (Read 992 times)
0 Members and 2 Guests are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 39
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi

I'm trying to control 128 leds through 2 cascaded MAX7221 ICs.

Everything seems to be connected correct and the code seems to be right... but there must be a flaw somewhere :-) Connections are:
  • Data in, latch and clock are connected tot IC 1 from the Arduino
  • Data out on IC 1 is going to Data in on IC 2. Clock and Latch are shared.

This is what happens:

  • Putting in the code that I only use 1 MAX7221 will result in the 2 ICs doing the same thing: when I enable LED 1 than LED 65 will be enabled as well and vice versa.
  • Putting that I'm using 2 MAX7221 ICs will result in 1 IC behaving as expected... the other one not doing anything.

This is the code:
Code:
#include <LedControl.h>

// inputs: DIN pin, CLK pin, LOAD pin. number of chips
LedControl mydisplay = LedControl(9, 10, 11, 2);

void setup() {
  mydisplay.shutdown(0, false); // turns on display
  mydisplay.setIntensity(0, 15); // 15 = brightest
}

void loop() {
  for(int i = 0; i < 8; i++)
  {
  for(int j = 0; j < 8; j++)
    {
      mydisplay.setLed(0, i, j, true);
      delay(100);
    }
    delay(100);
  }

  delay(1000);

  for(int i = 0; i < 8; i++)
  {
  for(int j = 0; j < 8; j++)
    {
      mydisplay.setLed(1, i, j, true);
      delay(100);
    }
    delay(100);
  }

  for(int i = 8; i >= 0; i--)
  {
    for(int j = 8; j >= 0; j--)
    {
      mydisplay.setLed(1, i, j, false);
      delay(500);
    }
  }
  delay(2000);
}

Thanks for any insights! :-)
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 39
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I reconnected all wires to be sure that wiring is not an issue and I have the same result. I also updated the ledcontrol.h lib and also seeing the same.

Thanks
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 39
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

second debug was to use separate outputs instead of cascading... everything worked like a charm...
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 39
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Got it.. I didn't wake up the second one:   mydisplay.shutdown(1, false); 

Leaving this topic for reference of others facing the same issue.
Logged

Syracuse NY USA
Offline Offline
Newbie
*
Karma: 1
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

second debug was to use separate outputs instead of cascading... everything worked like a charm...

Could you give us your final schematic and sketch?  THU
Logged

Pages: [1]   Go Up
Jump to: