Make Your Own LED Matrix Display Using Arduino With MAX7219 LED Module - 8x32 Display For Beginners

แชร์
ฝัง
  • เผยแพร่เมื่อ 7 มิ.ย. 2024
  • This Video shows you how to make your own matrix display using Arduino with An 8x32 MAX7219 LED dot matrix display module.
    ++SUBSCRIBE++ to catch up with what we're doing at the BMonster Laboratory
    / @bmonsterlaboratory
    Facebook: / bmonster-laboratory-10...
    the code I used in Arduino IDE is posted on the Facebook. search #8x32max7219
    Twitter: / b_monsterlab
    if you need help installing libraries or setting up your Arduino IDE, check out this video
    • The Most Complete Star...
    Chapters:
    0:00 intro
    0:45 components used in video
    1:21 intro to the module
    3:53 connection diagram for multiple displays
    4:23 connecting the display
    5:13 code for scrolling display
    7:18 2nd option for displaying text
    7:28 code for 2nd option
    Check out MD_Parola libraries on github - github.com/MajicDesigns/MD_Pa...
    There's a lot to love about the MAX7219 LED matrix module. Each module is a 4 unit 8x8 dot matrix running on it's own MAX7219 IC. This display works great as a marquee, a clock, a temperature display, as info signage, and more! If this module is no large enough for you then just daisy chain more module together. I'm no sure of the max number of modules you can chain together but I know you can add at least 4 of these modules (or 16 8x8 units) together for a larger display. I'm pretty excited about this module and look forward to incorporating it into some future projects.
    In this video, you'll see how to make your own led matrix display using the max7219 IC. You'll be able to make your own 8x32 led display and program a LED display for another fun DIY Arduino project.
    I purchased these on Amazon but you may want to check Ebay if you're not in a hurry to get them. I purchased mine from Amazon and only 1 worked. Was it user error or was it just a faulty module? - who knows. I will purchase a couple more from another vendor because these displays could be used in a variety of projects, they make a great Arduino project for beginners, and they are fun to learn with.
    Thanks for watching!

ความคิดเห็น • 41

  • @Discmystro1977
    @Discmystro1977 ปีที่แล้ว +2

    This video helped me out tremendously. Thank you. You just got a new subscriber here.

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว +1

      Awesome, thank you! These matrix modules are a lot of fun.

  • @AlexeyDonskoy
    @AlexeyDonskoy ปีที่แล้ว +1

    Thank you! This video helps me a lot.

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว +1

      Awesome! Thanks for the message and good luck with your project

  • @heikobleh4922
    @heikobleh4922 2 ปีที่แล้ว +1

    nice!

    • @BMonsterLaboratory
      @BMonsterLaboratory  2 ปีที่แล้ว +1

      Thanks Heiko! These LED matrix modules are awesome~ Have a great weekend! 👊👊

  • @henrytheg-shep5635
    @henrytheg-shep5635 ปีที่แล้ว +1

    My only question is when connecting two displays together, how do I get the VCC, GND, DOUT to DIN, etc. to actually stay together? Is there a female adaptor that would go on the board so I can directly plug the male into the female? I have three 8x8 that I need to connect together to make a 8x24 display. I'm basically just asking how do I connect them when they are directly next to each other?

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว

      My favorite was is to use straight pin headers, not the curved ones they give you, and connect them using a pin header jumper cap. They keep everything close and they are easy to remove later if you want. There are other ways but this way is the cleanest look i think.

    • @henrytheg-shep5635
      @henrytheg-shep5635 ปีที่แล้ว +1

      @@BMonsterLaboratory Alright thanks. really good and helpful vid btw.

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว

      @@henrytheg-shep5635 thank you!

    • @henrytheg-shep5635
      @henrytheg-shep5635 ปีที่แล้ว +1

      @@BMonsterLaboratory So I have my matrix boards. My only concern is are you sure the jumper pin caps aren't going to prevent the led matrix from coming down all the way? The pins seem to be a bit long too

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว

      @@henrytheg-shep5635 I'll post a picture to the facebook page this evening if it would be helpful

  • @hajutali664
    @hajutali664 ปีที่แล้ว +1

    sir, how to display two different text SIMULTANEOUSLY, in two DIFFERENT 8 by 32 max 7219, using SINGLE ARDUINO BOARD. please. in 1st 7219 i want to display name of organization. and in 2nd board i want to display date and time.

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว

      hi there! Download MD_Parola library. Define Max_Devices as 8. There are many examples to get you started. You can upload the display example or any of the others to your Arduino - they're a huge help!

  • @user-kc8pn2zf4f
    @user-kc8pn2zf4f ปีที่แล้ว +1

    sir i need to add the library. unfortunately i cannot find a libraries for my led matrix. please send me. thank you.

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว

      Hi there! If you're using Arduino IDE 2.0, go to the library tab on the left and search MAX7219. You can download it here. That's the easiest way

  • @ExtremeMonkey
    @ExtremeMonkey 8 หลายเดือนก่อน

    How would I go about replacing the text with a variable like "points" this library doesn't play well with variables

    • @BMonsterLaboratory
      @BMonsterLaboratory  8 หลายเดือนก่อน

      Hey there! Do you just want "Points" to scroll? Do you want anything else? How many 8x8 matrix modules are you using?
      Are you using these libraries?:
      #include
      #include
      #include
      in a 8x32 matrix module make sure to include this:
      #define MAX_DEVICES 4
      and:
      myDisplay.displayScroll("POINTS", PA_CENTER, PA_SCROLL_LEFT, 100);
      I hope that's helpful - happy to help if you still need it. good luck! 💪

    • @BMonsterLaboratory
      @BMonsterLaboratory  8 หลายเดือนก่อน

      If you want a bigger display, also check out Teensy 4.1 - this board works great with LED sings if you have them powered correctly. th-cam.com/video/oMlgBs5TzYA/w-d-xo.html

    • @ExtremeMonkey
      @ExtremeMonkey 8 หลายเดือนก่อน

      @@BMonsterLaboratory In that format, yes but I need a variable(Points) that displays a value that is constantly changing via other code, I just need it to display, for example, id have: int Points = 1; I need 1 (or stored value) to display. there's not much information out there on this topic unfortunately.

  • @bangtanbb1405
    @bangtanbb1405 ปีที่แล้ว +1

    When i connect my board with my pc matrix display's led doesn't even on why???
    Pls rply...

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว

      hey there! It sounds like you may need to run MD_MAX72XX_Test.ino to help figure out which hardware type to use in code. go to the example code in the MD_MAX72xx library and run the test. open the serial monitor and follow the directions. It will ask questions about what you see on the matrix. After you answer questions it will tell you what to put for the hardware type - it could be PAROLA_HW, ICSTATION_HW, GENERIC_HW, or FC16_HW. for me it's usually FC16_HW. I hope this helps. It can be frustrating at first but once you get it, it's pretty cool. sorry about the late reply....big trip coming up soon. Best of luck to you 👍

  • @user-ow3no5lx1f
    @user-ow3no5lx1f ปีที่แล้ว +1

    Hello can you tell the components which is used i am unable to understand it in video

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว +1

      hey there! For this, all you need is arduino, jumper wires, breadboard, breadboard power supply, and the MAX7219 LED Module. 👍

    • @user-ow3no5lx1f
      @user-ow3no5lx1f ปีที่แล้ว +1

      @@BMonsterLaboratory thankyou so much

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว

      @@user-ow3no5lx1f you're welcom. Good luck with your projects

  • @shash747
    @shash747 2 ปีที่แล้ว +1

    man i want the copyright cause u use my name :) but ty now i can do my school homework

    • @BMonsterLaboratory
      @BMonsterLaboratory  2 ปีที่แล้ว

      Hi ShaSh! Which name are you referring to? I Hope the video was helpful and you're enjoying Arduino. Keep up the good work!

  • @srijanisen3898
    @srijanisen3898 ปีที่แล้ว +1

    What is pin 13 called

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว +1

      Hi there. In the video I used the LED module clock pin at pin 13. Pin 13 is a digital pin on your Arduino. It is also connected to your onboard led.

  • @watodo1688
    @watodo1688 ปีที่แล้ว +1

    Can we display image on that

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว

      Sure! What do you have in mind?

    • @watodo1688
      @watodo1688 ปีที่แล้ว +1

      @@BMonsterLaboratory to view image or video

    • @BMonsterLaboratory
      @BMonsterLaboratory  ปีที่แล้ว

      Check out led matrix studio. Also check out MD_MAX72XX library. There are some good examples there. If you get stuck, let me know

  • @graemewilson4126
    @graemewilson4126 11 หลายเดือนก่อน +1

    Hi, Wondering if there is any chance of getting the full Script for this, please

    • @BMonsterLaboratory
      @BMonsterLaboratory  11 หลายเดือนก่อน

      Hey there! The code I used is posted on Facebook. go there and search #8x32max7219 - check the comment section. I have 2 different sketches posted there. A lot of the time it's too long to post here. hope that helps! 👍

    • @graemewilson4126
      @graemewilson4126 11 หลายเดือนก่อน +1

      @@BMonsterLaboratory Hi, from someone is just starting with ARDUINOs and stuff, I am looking at JUST ONE, SINGLE 8x8 Matrix to show a NUMBER, as in 1 or 2 or 3 and so on to 0, in total 10, I believe there will a number of the same code with this, so I am willing to except just ONE TO START and I may be able to ADD THE REST. THANKS

    • @BMonsterLaboratory
      @BMonsterLaboratory  11 หลายเดือนก่อน

      @@graemewilson4126 sounds good! Try this. #include
      #include
      #define HARDWARE_TYPE MD_MAX72XX::FC16_HW
      #define CS_PIN 10
      #define MAX_DEVICES 1
      MD_MAX72XX mx = MD_MAX72XX(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
      // Define the bitmap for the number 1
      const uint8_t num1[] PROGMEM = { B00000000, B00000001, B00000001, B00000001, B00000001, B00000001, B00000001, B00000000 };
      void setup() {
      mx.begin();
      mx.control(MD_MAX72XX::INTENSITY, 2); // Set intensity (brightness) level
      mx.clear(); // Clear the display
      }
      void loop() {
      mx.clear(); // Clear the display
      // Display the number 1
      mx.setRow(0, 0, num1[0]);
      delay(2000);
      }
      -change the bitmap to get different numbers.

    • @BMonsterLaboratory
      @BMonsterLaboratory  11 หลายเดือนก่อน

      here's a 9 to 0 countdown on 1 single 8x8 matrix.
      #include
      #include
      #define HARDWARE_TYPE MD_MAX72XX::FC16_HW
      #define CS_PIN 10
      #define MAX_DEVICES 1
      MD_MAX72XX mx = MD_MAX72XX(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
      // Define the bitmaps for numbers 0-9
      const uint8_t numbers[][8] PROGMEM = {
      { B11111100, B10000010, B10000010, B10000010, B10000010, B10000010, B11111100 }, // 0
      { B00000000, B00000000, B10000010, B11111110, B10000000, B10000000, B00000000 }, // 1
      { B11100100, B10010010, B10010010, B10010010, B10010010, B10010010, B10011100 }, // 2
      { B10000100, B10000010, B10001010, B10001010, B10001010, B10001010, B01110100 }, // 3
      { B00011100, B00010010, B00010010, B00010010, B11111110, B00010000, B00011110 }, // 4
      { B10011100, B10010010, B10010010, B10010010, B10010010, B10010010, B01100000 }, // 5
      { B01111100, B10010010, B10010010, B10010010, B10010010, B10010010, B01100000 }, // 6
      { B10000000, B10000000, B10000010, B10000010, B10000010, B10000010, B11111110 }, // 7
      { B01110100, B10001010, B10001010, B10001010, B10001010, B10001010, B01110100 }, // 8
      { B01111100, B10010010, B10010010, B10010010, B10010010, B10010010, B11111100 } // 9
      };
      void setup() {
      mx.begin();
      mx.control(MD_MAX72XX::INTENSITY, 2); // Set intensity (brightness) level
      mx.clear(); // Clear the display
      }
      void loop() {
      mx.clear(); // Clear the display
      for (int i = 9; i >= 0; i--) {
      mx.setRow(0, 0, numbers[i][0]);
      mx.setRow(0, 1, numbers[i][1]);
      mx.setRow(0, 2, numbers[i][2]);
      mx.setRow(0, 3, numbers[i][3]);
      mx.setRow(0, 4, numbers[i][4]);
      mx.setRow(0, 5, numbers[i][5]);
      mx.setRow(0, 6, numbers[i][6]);

      delay(1000); // Delay for 1 second
      }
      }

    • @graemewilson4126
      @graemewilson4126 11 หลายเดือนก่อน

      @@BMonsterLaboratory sorry have copied and pasted this but what I believe is it format, I have it wrong as trying to VERIFY came back a error, so I need to have the actual code, with just the one number - please