Quite a while ago, I did a tutorial on how to create a Scrolling Text using a MAX7219 LED Matrix and an Arduino.
It worked, but the library I used at the time was very limited and hard to modify how the text scrolls across multiple matrix modules.
So I decided to make this new tutorial but this time using a more flexible library which provides more options.
The library in question is the ‘Parola’ library by MajicDesigns.
In this tutorial, I will use six MAX7219 LED matrix linked together with a slider potentiometer to control the direction and speed of the scrolling text in real-time.
Now let’s take a closer look at the MAX7219 driver. The IC is capable of driving 64 individual LEDs while using only 3 wires for communication with the Arduino, and what’s more, we can daisy chain multiple drivers and matrixes and still use the same 3 wires.
The VCC and GND of the module go to the 5V and GND pins of the Arduino and the three other pins, DIN, CLK, and CS go to any digital pin of the Arduino board. If we want to connect more than one module we just connect the output pins of the previous breakout board to the input pins of the new module. Actually these pins are all the same except that the DOUT pin of the previous board goes to the DIN pin of the new board.
The 64 LEDs are driven by 16 output pins of the IC. The question now is how is that possible. Well, the maximum number of LEDs light up at the same time is actually eight. The LEDs are arranged as 8×8 set of rows and columns. So the MAX7219 activates each column for a very short period of time and at the same time, it also drives each row. So by rapidly switching through the columns and rows, the human eye will only notice a continuous light.
The connections are as follow:
LIBRARY CONFIG AND DOWNLOAD
The Parola library as a dependency and requires additional library MAX72xx Arduino library This library has support for many different types of models of LED Matrix.
So you need to edit the library file to set the right setting to select the Led Matrix you are using.
For more information on what file to edit in the library have a look at the tutorial video.