विषयसूची:

MAX7219 LED डॉट मैट्रिक्स असेंबली और परीक्षण: 6 चरण (चित्रों के साथ)
MAX7219 LED डॉट मैट्रिक्स असेंबली और परीक्षण: 6 चरण (चित्रों के साथ)

वीडियो: MAX7219 LED डॉट मैट्रिक्स असेंबली और परीक्षण: 6 चरण (चित्रों के साथ)

वीडियो: MAX7219 LED डॉट मैट्रिक्स असेंबली और परीक्षण: 6 चरण (चित्रों के साथ)
वीडियो: How to make a LED digital counter using 7- Segment Display 2024, नवंबर
Anonim
Image
Image
पैकेज की जाँच करें
पैकेज की जाँच करें

डॉट-मैट्रिक्स डिस्प्ले एक डिस्प्ले डिवाइस है जिसमें मैट्रिक्स के रूप में संरेखित प्रकाश उत्सर्जक डायोड होते हैं। इस डॉट मैट्रिक्स डिस्प्ले का उपयोग उन अनुप्रयोगों में किया जाता है जहां प्रतीक, ग्राफिक, वर्ण, अक्षर, अंक एक साथ स्थिर और साथ ही प्रदर्शित करने की आवश्यकता होती है। स्क्रॉलिंग मोशन। डॉट मैट्रिक्स डिस्प्ले 5x7, 8x8, 16x8, 128x16, 128x32 और 128x64 जैसे विभिन्न आयामों में निर्मित होता है, जहां नंबर पंक्तियों और स्तंभों में एलईडी का प्रतिनिधित्व करते हैं, साथ ही ये डिस्प्ले विभिन्न रंगों जैसे लाल, हरे, पीले, नीले, में आते हैं। नारंगी, सफेद।

इस निर्देशयोग्य में, मैं एक 8x8 डॉट मैट्रिक्स को इंटरफेस करने जा रहा हूँ, जिसमें एक Arduino Uno के लिए MAX7219 ड्राइवर है। चलिए शुरू करते हैं।

आपूर्ति

MAX7219

चरण 1: पैकेज की जाँच करें

जैसा कि आप देख सकते हैं कि मेरे पास ड्राइवर बोर्ड का एक smt संस्करण है, आवश्यक प्रत्येक घटक को सत्यापित करना बहुत महत्वपूर्ण है क्योंकि smd घटक आकार में बहुत छोटे होते हैं और आप उन्हें आसानी से खो सकते हैं। ऑनलाइन डिप संस्करण भी उपलब्ध हैं लेकिन मैंने उपयोग किया इसके आकार के लिए श्रीमती संस्करण।

चरण 2: इस विशेष डॉट मैट्रिक्स के बारे में थोड़ा

इस विशेष डॉट मैट्रिक्स के बारे में थोड़ा
इस विशेष डॉट मैट्रिक्स के बारे में थोड़ा

सिंगल मॉड्यूल 8x8 डॉट मैट्रिक्स कॉमन कैथोड ड्राइव कर सकता है।

ऑपरेटिंग वोल्टेज: 5 वी

आयाम: लंबाई 3.2 सेमी X 3.2 सेमी चौड़ा X 1.3 सेमी ऊंचा, चार स्क्रू के साथ छेद, 3 मिमी का व्यास

इनपुट और आउटपुट इंटरफेस के साथ मॉड्यूल, कई मॉड्यूल कैस्केडिंग के लिए समर्थन।

डेटा IN और OUT टर्मिनलों को मॉड्यूल पर निर्दिष्ट किया गया है।

चरण 3: MAX7219 चालक

MAX7219 चालक
MAX7219 चालक
MAX7219 चालक
MAX7219 चालक

MAX7219 एक IC है जिसे 8x8 LED मैट्रिक्स को नियंत्रित करने के लिए डिज़ाइन किया गया है। आईसी सीरियल इनपुट कॉमन-कैथोड (कॉमन नेगेटिव) डिस्प्ले ड्राइवर है जो माइक्रोप्रोसेसर (या माइक्रोकंट्रोलर) को 8 अंकों तक के 7-सेगमेंट न्यूमेरिक एलईडी डिस्प्ले, बार-ग्राफ डिस्प्ले या 64 अलग-अलग एल ई डी में इंटरफेस करता है।

विशेषताएं और निर्दिष्टीकरण

ऑपरेटिंग वोल्टेज रेंज: +4.0 से +5.5V

अनुशंसित ऑपरेटिंग वोल्टेज: +5V

अधिकतम आपूर्ति वोल्टेज: 6V

प्रत्येक खंड पिन के माध्यम से अधिकतम धारा खींचने की अनुमति: 100mA

प्रत्येक DIGIT ग्राउंड पिन के माध्यम से अधिकतम करंट की अनुमति: 500mA

कम बिजली की खपत

डेटा-टू-सेगमेंट विलंब समय: 2.2mSec

ऑपरेटिंग तापमान: 0°C से +70°C

भंडारण तापमान: -65 डिग्री सेल्सियस से + 150 डिग्री सेल्सियस

चरण 4: सर्किट

सर्किट
सर्किट
सर्किट
सर्किट

सर्किट काफी सरल है और इसे पुरुष से महिला जम्पर तारों का उपयोग करके बनाया जा सकता है। बस पिनआउट का पालन करें और सर्किट का निर्माण करें। यदि आप मैट्रिक्स के लिए स्थायी आवेदन कर रहे हैं तो आप बाद में इसे पीसीबी पर इकट्ठा कर सकते हैं।

पिन विन्यास इस प्रकार है:

  • Vcc से 5V Arduino का पिन।
  • Arduino के Gnd से Gnd पिन तक।
  • Arduino के DIN से डिजिटल पिन 12।
  • Arduino के CS से डिजिटल पिन 11
  • Arduino के CLK से डिजिटल पिन 10।

चरण 5: कोड

यहाँ इस निर्देशयोग्य में मैं आपको दो अलग-अलग कोड प्रदान करूँगा। एक मैट्रिक्स पर कुछ अंग्रेजी अक्षर और स्माइली उत्पन्न करेगा। अन्य सभी 64 एल ई डी एक-एक करके प्रकाश करेंगे। इसे काम करने के लिए आपको lledcontrol लाइब्रेरी का उपयोग करना चाहिए।

यह अंग्रेजी अक्षर और मुस्कान के लिए कोड है

#int DIN = 12 शामिल करें; इंट सीएस = 11; इंट सीएलके = 10; बाइट ई [8] = {0x7C, 0x7C, 0x60, 0x7C, 0x7C, 0x60, 0x7C, 0x7C}; बाइट डी [8] = {0x78, 0x7C, 0x66, 0x66, 0x66, 0x66, 0x7C, 0x78}; बाइट यू [8] = {0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x7E}; बाइट सी [8] = {0x7E, 0x7E, 0x60, 0x60, 0x60, 0x60, 0x7E, 0x7E}; बाइट आठ[8]= {0x7E, 0x7E, 0x66, 0x7E, 0x7E, 0x66, 0x7E, 0x7E}; बाइट एस [8] = {0x7E, 0x7C, 0x60, 0x7C, 0x3E, 0x06, 0x3E, 0x7E}; बाइट डॉट [8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18}; बाइट ओ [8] = {0x7E, 0x7E, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x7E}; बाइट एम [8] = {0xE7, 0xFF, 0xFF, 0xDB, 0xDB, 0xDB, 0xC3, 0xC3}; लेडकंट्रोल एलसी = लेडकंट्रोल (डीआईएन, सीएलके, सीएस, 0); शून्य सेटअप(){ lc.shutdown(0, false); // MAX72XX स्टार्टअप lc.setIntensity(0, 15) पर पावर-सेविंग मोड में है; // चमक को अधिकतम मान lc.clearDisplay(0) पर सेट करें; // और डिस्प्ले को क्लियर करें } शून्य लूप () {बाइट स्माइल [8] = {0x3C, 0x42, 0xA5, 0x81, 0xA5, 0x99, 0x42, 0x3C}; बाइट न्यूट्रल [8] = {0x3C, 0x42, 0xA5, 0x81, 0xBD, 0x81, 0x42, 0x3C}; बाइट फ्राउन [8] = {0x3C, 0x42, 0xA5, 0x81, 0x99, 0xA5, 0x42, 0x3C}; प्रिंटबाइट (मुस्कान); देरी (1000); प्रिंटबाइट (तटस्थ); देरी (1000); प्रिंटबाइट (भौंह); देरी (1000); प्रिंटEduc8s (); एलसी.क्लियरडिस्प्ले(0); देरी (1000); } शून्य PrintEduc8s () {प्रिंटबाइट (ई); देरी (1000); प्रिंटबाइट (डी); देरी (1000); प्रिंटबाइट (यू); देरी (1000); प्रिंटबाइट (सी); देरी (1000); प्रिंटबाइट (आठ); देरी (1000); प्रिंटबाइट (ओं); देरी (1000); प्रिंटबाइट (डॉट); देरी (1000); प्रिंटबाइट (सी); देरी (1000); प्रिंटबाइट (ओ); देरी (1000); प्रिंटबाइट (एम); देरी (1000); } शून्य प्रिंटबाइट (बाइट कैरेक्टर ) {int i = 0; for(i=0;i<8;i++) { lc.setRow(0, i, character); } }

और सभी 64 एल ई डी के परीक्षण के लिए कोड

// हमें हमेशा पुस्तकालय को शामिल करना होगा#"LedControl.h" शामिल करें

/*

अब हमें काम करने के लिए एक लेडकंट्रोल की जरूरत है। ***** ये पिन नंबर शायद आपके हार्डवेयर के साथ काम नहीं करेंगे ***** पिन 12 डेटा से जुड़ा है पिन 10 सीएलके पिन से जुड़ा है 11 लोड से जुड़ा है हमारे पास केवल एक MAX72XX है। */ लेडकंट्रोल एलसी = लेडकंट्रोल(१२, ११, १०, १);

/* हम डिस्प्ले के अपडेट के बीच हमेशा थोड़ा इंतजार करते हैं */

अहस्ताक्षरित लंबी देरी समय = १००;

व्यर्थ व्यवस्था() {

/* MAX72XX स्टार्टअप पर पावर-सेविंग मोड में है, हमें एक वेकअप कॉल करना होगा */ lc.shutdown(0, false); /* चमक को मध्यम मान पर सेट करें */ lc.setIntensity(0, 8); /* और डिस्प्ले साफ़ करें */ lc.clearDisplay(0); }

/*

यह विधि मैट्रिक्स पर एक के बाद एक "Arduino" शब्द के लिए वर्ण प्रदर्शित करेगी। (आपको पूरे वर्ण देखने के लिए कम से कम 5x7 लीड की आवश्यकता है) */ void writeArduinoOnMatrix() {/* यहां वर्णों के लिए डेटा है */बाइट a[5]={B01111110, B10001000, B10001000, B10001000, B01111110}; बाइट r[5]={B00111110, B00010000, B00100000, B00100000, B00010000}; बाइट d[5]={B00011100, B00100010, B00100010, B00010010, B11111110}; बाइट यू[5]={B00111100, B00000010, B00000010, B00000100, B00111110}; बाइट i[5]={B00000000, B00100010, B10111110, B00000010, B00000000}; बाइट n[5]={B00111110, B00010000, B00100000, B00100000, B00011110}; बाइट ओ [5] = {B00011100, B00100010, B00100010, B00100010, B00011100};

/* अब उन्हें एक-एक करके थोड़ी देरी से प्रदर्शित करें */

lc.setRow(0, 0, a[0]); lc.setRow(0, 1, a[1]); lc.setRow(0, 2, a[2]); lc.setRow(0, 3, a[3]); lc.setRow(0, 4, a[4]); देरी (विलंब समय); एलसी.सेटरो (0, 0, आर [0]); lc.setRow(0, 1, r[1]); lc.setRow(0, 2, r[2]); एलसी.सेटरो (0, 3, आर [3]); एलसी.सेटरो (0, 4, आर [4]); देरी (विलंब समय); lc.setRow(0, 0, d[0]); lc.setRow(0, 1, d[1]); lc.setRow(0, 2, d[2]); lc.setRow(0, 3, d[3]); lc.setRow(0, 4, d[4]); देरी (विलंब समय); एलसी.सेटरो (0, 0, यू [0]); lc.setRow(0, 1, यू[1]); lc.setRow(0, 2, u[2]); एलसी.सेटरो (0, 3, यू [3]); एलसी.सेटरो (0, 4, यू [4]); देरी (विलंब समय); lc.setRow(0, 0, i[0]); lc.setRow(0, 1, i[1]); lc.setRow(0, 2, i[2]); lc.setRow(0, 3, i[3]); lc.setRow(0, 4, i[4]); देरी (विलंब समय); एलसी.सेटरो (0, 0, एन [0]); lc.setRow(0, 1, n[1]); lc.setRow(0, 2, n[2]); एलसी.सेटरो (0, 3, एन [3]); एलसी.सेटरो (0, 4, एन [4]); देरी (विलंब समय); एलसी.सेटरो (0, 0, ओ [0]); एलसी.सेटरो (0, 1, ओ [1]); lc.setRow(0, 2, o[2]); एलसी.सेटरो (0, 3, ओ [3]); एलसी.सेटरो (0, 4, ओ [4]); देरी (विलंब समय); एलसी.सेटरो (0, 0, 0); एलसी.सेटरो (0, 1, 0); एलसी.सेटरो (0, 2, 0); एलसी.सेटरो (0, 3, 0); एलसी.सेटरो (0, 4, 0); देरी (विलंब समय); }

/*

यह फ़ंक्शन एक पंक्ति में कुछ एल ई डी को रोशनी देता है। पैटर्न हर पंक्ति पर दोहराया जाएगा। पैटर्न पंक्ति-संख्या के साथ झपकाएगा। पंक्ति संख्या ४ (सूचकांक==३) ४ बार झपकाएगी आदि। lc.setRow (0, पंक्ति, B10100000); देरी (विलंब समय); lc.setRow (0, पंक्ति, (बाइट) 0); के लिए(int i=0;i

/*

यह फ़ंक्शन एक कॉलम में कुछ एल ई डी को रोशनी देता है। पैटर्न हर कॉलम पर दोहराया जाएगा। कॉलम-नंबर के साथ पैटर्न ब्लिंक होगा। स्तंभ संख्या ४ (सूचकांक==३) ४ बार झपकाएगा आदि। lc.setColumn(0, col, B10100000); देरी (विलंब समय); lc.setColumn(0, col, (बाइट) 0); के लिए(int i=0;i

/*

यह फ़ंक्शन मैट्रिक्स पर प्रत्येक एलईडी को रोशन करेगा। पंक्ति-संख्या के साथ एलईडी झपकेगी। पंक्ति संख्या ४ (सूचकांक==३) ४ बार झपकाएगी आदि। देरी (विलंब समय); lc.setLed (0, पंक्ति, कर्नल, सत्य); देरी (विलंब समय); के लिए(int i=0;i

शून्य लूप () {

राइटअर्डिनोऑनमैट्रिक्स (); पंक्तियाँ (); कॉलम (); एक(); }

चरण 6: आउटपुट

Image
Image
उत्पादन
उत्पादन
उत्पादन
उत्पादन
उत्पादन
उत्पादन

पूरा वीडियो यहां देखें:- MAX7219 8x8 एलईडी मैट्रिक्स असेंबली और ARDUINO का उपयोग करके परीक्षण

खैर, यह सारी मेहनत, निश्चित रूप से परिणाम देखने पर बहुत अच्छी तरह से भुगतान करती है। यह इसके लायक है !!

मेरे यूट्यूब चैनल को सब्सक्राइब करें:-क्रिएटिव स्टफ

सिफारिश की: