← सभी पोस्ट ब्लॉग पोस्ट

Arduino के साथ MAX7219 7-Segment Display कैसे use करें

Viktoria Builds

MAX7219 8-digit 7-segment display module को Arduino से connect करें और LedControl library से कुछ ही मिनटों में numbers और letters दिखाएं।

YouTube पर देखें

MAX7219 एक chip है जो एक simple 3-wire SPI interface से 8 सात-segment digits तक control कर सकती है। आपको एक ready-made module मिलता है — chip, display, decoupling caps, सब कुछ एक board पर। Arduino के साथ यह सबसे आसान displays में से एक है क्योंकि library सारा multiplexing खुद handle करती है।

Module में कुल 10 pins हैं, हर side पर पांच। एक side input है, दूसरी side output है कई modules को daisy-chain करने के लिए। आपको सिर्फ input side चाहिए: VCC, GND, DIN, LOAD, और CLK।

Parts

  • Arduino (Uno, Nano, या similar)
  • MAX7219 8-digit 7-segment display module
  • Jumper wires

Wiring

Module का input side Arduino से इस तरह connect करें:

  • VCC → 5V
  • GND → GND
  • DIN → pin 12
  • CLK → pin 11
  • LOAD → pin 10

Wiring सीधी है। Module 5V पर चलता है और SPI lines सीधे Arduino के digital pins से जाती हैं।

Library

Arduino Library Manager से LedControl library install करें। "LedControl" search करें और Eberhard Fahle की library install करें। कोई दूसरी dependency नहीं चाहिए।

Sketch

तीन pin numbers और daisy-chained modules की संख्या के साथ एक LedControl object initialize करें। फिर उसे wake up करें, brightness set करें (0–15), और display clear करें। Digit दिखाने के लिए setDigit use करें — device index, right से position starting at zero, digit value, और decimal point दिखाना है या नहीं। Letters के लिए setChar use करें। सभी characters 7-segment display पर possible नहीं होते, लेकिन H, E, L, P और कुछ और काम करते हैं।

#include "LedControl.h"

LedControl lc = LedControl(12, 11, 10, 1);

unsigned long delaytime = 500;

void setup() {
  lc.shutdown(0, false);
  lc.setIntensity(0, 8);
  lc.clearDisplay(0);
}

void goofy() {
  lc.setChar(0, 7, 'H', false);
  lc.setChar(0, 6, 'E', false);
  lc.setChar(0, 5, 'L', false);
  lc.setChar(0, 4, 'P', false);
  lc.setChar(0, 3, '.', false);
  lc.setChar(0, 2, '.', false);
  lc.setChar(0, 1, '.', false);
  lc.setChar(0, 0, '.', false);
  delay(delaytime + 1000);
  lc.clearDisplay(0);
  delay(delaytime * 3);
}

void loop() {
  goofy();
}

Modules chain करना

DOUT side chaining के लिए है। पहले module का DOUT दूसरे module के DIN से connect करें, LedControl constructor में device count बढ़ाएं, और हर module को उसके index से address करें। उसी तीन Arduino pins पर कई modules chain किए जा सकते हैं।

Result

Sketch upload करें और तुरंत काम करना शुरू हो जाएगा। Digits light up होते हैं, decimal point हर digit पर control किया जा सकता है, और brightness code में आसानी से adjust होती है। पूरा sketch मेरे GitHub पर है और मेरी site से linked है। अगर आप इससे कुछ बनाते हैं — एक clock, counter, जो भी — Discord में share करें।

यह ट्यूटोरियल पसंद आया?

Patreon पर चैनल को सपोर्ट करें और प्रोजेक्ट्स, बिल्ड लॉग्स और बहुत कुछ तक जल्दी पहुंचें।

Patreon पर सपोर्ट करें →