Tags: 8x8, LED, 5.5V, matrix, Max7219, Cascadable, Arduino, PIC, raspberry, pi, lcd,

LED matrix 8x8 5.5V Max7219 Cascadable Arduino PIC raspberry pi

  • 19.00 AED

    25.00 AED

    • Ex Tax:19.00 AED
    • Product Code: Max7219
    • Availability: In Stock
    Specifications:A single module can drive an 8 x 8 common cathode latticeOperating voltage: 5VSize: 5 x 3.2 x 1.5 cm (L x W x H)LED color: redWith four screws hole, aperture 3mmWith input and output interfaces, supports multiple modules cascadeWiring instructions:1. The module left side as an input p..

    Specifications:

    A single module can drive an 8 x 8 common cathode lattice
    Operating voltage: 5V
    Size: 5 x 3.2 x 1.5 cm (L x W x H)
    LED color: red
    With four screws hole, aperture 3mm
    With input and output interfaces, supports multiple modules cascade

    Wiring instructions:

    1. The module left side as an input port and the output port on the right
    2. To control a single module, just connect the input port to the MCU
    3. When cascading multiple modules, the input port of the first module connect to the 
    MCU, the output port connect to the input port of the second one, and so on.

    In the case of 51 MCU:

    VCC → 5V
    GND → GND
    DIN → P22
    CS → P21
    CLK → P20


    Schematics

    The circuit diagram/ schematics for this project is shown below.

    The 8×8 LED matrix is made up of 64 LEDs,  graphics, text, and symbols are displayed by turning certain LEDs on while other LEDs are turned off. Instead of writing the byte array to instruct the code on which LED to turn on or off when a particular text or symbol is to be displayed, we can generate the byte array with the help of a simple software called pixeltomatrix which I found online. It generates byte arrays for LED matrix after the design has been done to show which LED will stay on and Which LED will go off to properly represent the Image, symbol, or text.

    Pixel to Matrix Software

     

    The Graphics is drawn by highlighting each of the green boxes in the image above to represent what we wish to display like I did for “O” in the image below.

    Creating a character “0”

    Once highlighting has been done, click on the generate button. It will translate the pixels we have marked to a byte array ( like the one in the image below) which can be used in our code.

    Generated Byte Array for Character “O”

     

    Code

    It’s time to finally write the Arduino code for the project. I will be doing a brief explanation of the code as it was done in the video and you can download the complete code from the attached link at the end of the page.

    To drive the LED matrix using the code, we will need the LED control library. You can download the library from the link below and unzip into your Arduino Libraries folder.

    ——————–

    LIBRARIES: https://github.com/wayoda/LedControl

    Once the Library is installed,  we are ready to launch the Arduino IDE and write the code.
    To explain the code as promised, the first thing we do is include the library that will be used as shown below

    #include <LedControl.h>
    

    We then declare the pins of the Arduino to which each pin of the LED matrix is connected.

    int DIN = 12;
    int CS =  11;
    int CLK = 10;
    

    Next, We declare the byte arrays which represent characters or graphics which we would like to display. Remember we already covered how to create graphic’s byte arrays easily above. So create some byte arrays and add them to this.

    byte c[8]=     {0x7E,0x7E,0x60,0x60,0x60,0x60,0x7E,0x7E};
    byte eight[8]= {0x7E,0x7E,0x66,0x7E,0x7E,0x66,0x7E,0x7E};
    byte s[8]=     {0x7E,0x7C,0x60,0x7C,0x3E,0x06,0x3E,0x7E};
    byte dot[8]=   {0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18};
    byte o[8]=     {0x7E,0x7E,0x66,0x66,0x66,0x66,0x7E,0x7E};
    

    Next, we initialize the LED control library by creating an object of the library after which we move to the void setup function to prepare the display by taking it off the power saving mode, setting the brightness of the LEDs to maximum and clearing the Display.

    LedControl lc=LedControl(DIN,CLK,CS,0);
    void setup(){
     lc.shutdown(0,false);       //The MAX72XX is in power-saving mode on startup
     lc.setIntensity(0,15);      // Set the brightness to maximum value
     lc.clearDisplay(0);         // and clear the display
    }
    

    Next, we move to the loop function. since our goal is to display the graphics, its the only thing that really needs to be done there. The printbyte() function is used to display the character or graphics stored in any of the byte arrays and a delay is kept after it to enable the printed graphics spend some time on the screen before another one is shown.

    void loop(){ 
        
        printByte(smile);
         
        delay(1000);
    

     

    The full code can be downloaded from the link below.

    ——————–

    CODE OF THE PROJECT & SOFTWARE
    ——————–

     

     

     

    Note:
    1. VCC and GND is not reversed, it would burn the chip!
    2. When the 51 microcontroller P0 port controlling, must be connected to the pull-up resistor, it is recommended that the resistance of 4.7K--10K
    3. Please install lattice into the round hole first, and then insert the round hole to PCB board and weld. Face the side of lattice with words, from left to right pin order is 123456. PCB board 1st pin is square pad!
    4.Electrolytic capacitors long-pin as positive, short-pin as negative; ceramic capacitor hsa no positive and negative points

    Package included:

    1 x LED module

    There are no reviews for this product.

    Write a review

    Please login or register to review