एलईडी मेट्रिसेस की योजना। एलईडी मेट्रिसेस

हाल के वर्षों में, बाहरी विज्ञापन और विभिन्न सूचना बोर्डों में एलईडी मेट्रिसेस व्यापक हो गए हैं। काफी उज्ज्वल, गतिशील - वे पूरी तरह से ध्यान आकर्षित करते हैं और धूप के दिन अंधे नहीं होते हैं। आप में से हर कोई उन्हें हर दिन अपने शहर की सड़कों पर देखता है।
बेशक, उनके वितरण को कम कीमत (चीनी निर्माताओं के कारण) और स्क्रीन की असेंबली में आसानी से मदद मिली।

लेकिन क्या होगा यदि आप माइक्रोकंट्रोलर पर अपने उपकरणों में ऐसे मैट्रिक्स का उपयोग करने का प्रयास करें? इन मैट्रिसेस का एक्सचेंज इंटरफेस और आउटपुट लॉजिक क्या है?
आइए यह सब पता लगाने की कोशिश करें।

चीनी दोनों मेट्रिसेस को अलग-अलग आकार और अलग-अलग रिज़ॉल्यूशन के साथ-साथ विभिन्न सरल प्रभावों के साथ-साथ सभी आवश्यक सामान, कनेक्टिंग केबल, फ्रेम के साथ उन पर चित्र प्रदर्शित करने के लिए नियंत्रक प्रदान करते हैं।
मैट्रिक्स एकल-रंग (सफेद, पीला, लाल, हरा, नीला) और 3-रंग (आरजीबी) के रूप में पाए जाते हैं। मैट्रिक्स मॉडल का पदनाम आमतौर पर Pxx या PHxx जैसा दिखता है, जहां xx मिलीमीटर में पिक्सेल के बीच की दूरी को इंगित करने वाली संख्या है। मेरे मामले में यह P10 है। इसके अलावा, कुछ मानक आकारों के आव्यूह न केवल आयताकार होते हैं, बल्कि वर्गाकार भी होते हैं।

मरने के आकार के लिए संभावित विकल्प



तो, हमारे पास 32x16 पिक्सेल का एक सफेद मैट्रिक्स है जिसमें 320x160 मिमी के आयाम हैं और तदनुसार, 10 मिमी की इंटरपिक्सेल दूरी है। आइए इसे करीब से देखें।
सामने का दृश्य:

आपको यह भी लगा कि एल ई डी किसी प्रकार का अंडाकार है? क्या आपने नहीं सोचा...


एलईडी के ऊपर एक छोटा सा छज्जा बना होता है, जो सूरज की रोशनी को एलईडी को रोशन करने से रोकता है।

प्लास्टिक मास्क के साथ सामने का दृश्य हटा दिया गया



हम मैट्रिक्स को घुमाते हैं और बोर्ड देखते हैं:


बोर्ड पर लॉजिक चिप्स का एक समूह है। आइए देखें कि ये माइक्रोक्रिस्किट क्या हैं:
1. 1 x SM74HC245D - नॉन-इनवर्टिंग बफर
2. 1 x SM74HC04 - 6-चैनल इन्वर्टर
3. 1 x SM74HC138D - 8-बिट डिकोडर
4. 4 x APM4953 - 2 P-चैनल MOSFETs की असेंबली
5. 16 x 74HC595D लैच्ड शिफ्ट रजिस्टर
दो 16-पिन कनेक्टर इंटरफ़ेस हैं, उनमें से एक इनपुट है (स्क्रीन नियंत्रक इससे जुड़ा है), और दूसरा आउटपुट है (श्रृंखला में अगला मैट्रिक्स इससे जुड़ा है)। बोर्ड पर तीर इनपुट कनेक्टर से आउटपुट पर निर्देशित होता है।
बोर्ड के केंद्र में टर्मिनलों को बिजली की आपूर्ति की जाती है। आपूर्ति वोल्टेज - 5 वी, अधिकतम वर्तमान (जब सभी एलईडी मैट्रिक्स चालू हों) - 2 ए (सफेद मैट्रिक्स के लिए)।

उपरोक्त सभी जानकारी, साथ ही नीचे दिए गए वीडियो में मैट्रिक्स का प्रदर्शन। इसमें, 13:04 से 15:00 तक मैं मेट्रिसेस की संख्या पर स्क्रीन की चमक की निर्भरता के बारे में बात करता हूं। यह एल्गोरिदम में त्रुटि के कारण है। बग को ठीक कर दिया गया है और अब स्क्रीन बंद होने से पहले डेटा लोड हो गया है।

मुझे भी आपको देखकर खुशी होगी मेरा यूट्यूब चैनल, जहाँ मैं अभी भी बहुत सी चीज़ों को माइक्रोकंट्रोलर्स से कनेक्ट करता हूँ।

ध्यान देने के लिए आप सभी का धन्यवाद!

एल ई डी के फायदे निर्विवाद हैं, आज वे घड़ियों सहित हर जगह हैं। एलईडी मैट्रिसेस पर कौन सी घड़ियां हैं, हम लेख में पेशेवरों और विपक्षों का विश्लेषण करेंगे। लेख के अंत में, अपने हाथों से उपकरण बनाने के लिए एक विस्तृत चरण-दर-चरण मार्गदर्शिका प्रस्तुत की गई है।

यह क्या है

एक एलईडी मैट्रिक्स घड़ी एक इलेक्ट्रॉनिक घड़ी है जो प्रदर्शन के लिए कई एल ई डी के मैट्रिक्स का उपयोग करती है। एक अलग प्रकार के संकेतकों का उपयोग उनका एकमात्र अंतर है।

एक मैट्रिक्स एल ई डी का एक सेट है जो एक ग्रिड में एक साथ एक एनोड या कैथोड के साथ इकट्ठा होता है। एक नियम के रूप में, ऐसे संकेतकों का संकल्प - लंबवत और क्षैतिज बिंदुओं की संख्या - 8x8 है।

ऐसी घड़ियाँ क्यों लोकप्रियता हासिल कर रही हैं, फायदे:

  1. कीमत। एलईडी मैट्रिक्स समान आकार के सात-खंड संकेतकों से सस्ता है।
  2. चमक। एलईडी 7-सेगमेंट डिस्प्ले की तुलना में उज्जवल हैं और धूप वाले स्थानों में देखने में आसान हैं। कई निर्माता सूर्य के संपर्क से डायोड को रचनात्मक सुरक्षा भी प्रदान करते हैं।
  3. कार्यक्षमता। एलईडी के एक मैट्रिक्स का उपयोग करके, आप न केवल संख्याएं प्रदर्शित कर सकते हैं, बल्कि विभिन्न अक्षर, विराम चिह्न, प्रतीक भी प्रदर्शित कर सकते हैं। एलईडी-मैट्रिसेस के एक सेट का उपयोग करके, आप रेंगने वाली रेखा के रूप में कुछ जानकारी प्रदर्शित कर सकते हैं।

एलईडी मेट्रिसेस के भी नुकसान हैं:

  • बढ़ी हुई नियंत्रण जटिलता। बड़ी संख्या में तत्वों के कारण (मानक मैट्रिक्स में उनमें से 64 हैं), मैट्रिक्स संकेतकों को सात-खंड वाले की तुलना में नियंत्रित करना आसान है। इसके लिए माइक्रोकंट्रोलर, डायनामिक इंडिकेशन और शिफ्ट रजिस्टर का इस्तेमाल किया जाता है।
  • देखने का दृष्टिकोण। एलईडी की ख़ासियत यह है कि वे प्रकाश को एक दिशा में केंद्रित करते हैं। यह इस तथ्य की ओर जाता है कि एलईडी मैट्रिक्स पर छवि केवल एक निश्चित कोण पर अच्छी तरह से देखी जा सकती है।
  • उच्च तापमान के लिए असहिष्णुता। गर्मी एलईडी की दक्षता कम कर देती है और उनके जीवनकाल को छोटा कर देती है।
  • अलग-अलग एल ई डी के बर्नआउट से "टूटे हुए पिक्सेल" का प्रभाव और छवि गुणवत्ता में गिरावट आएगी।

एलईडी मैट्रिसेस पर घर का बना घड़ियां

एलईडी मैट्रिसेस पर घड़ियों की बहुत लोकप्रियता के बावजूद, रनेट में उनके स्वतंत्र उत्पादन के लिए इतनी योजनाएँ नहीं हैं। आइए सबसे लोकप्रिय पर विचार करें।

डिवाइस को इकट्ठा करने के लिए आवश्यक कौशल:

  • मुद्रित सर्किट बोर्डों का उत्पादन;
  • टांका लगाने वाले तत्व: योजना एसएमडी निष्पादन मानती है, जिसका अर्थ है कि तत्वों को सीधे बोर्ड की सतह पर स्थापित किया जाएगा;
  • माइक्रोकंट्रोलर्स का फर्मवेयर: MK ATMega16A का उपयोग सर्किट में किया जाता है;
  • एमके प्रोग्रामिंग: यह आवश्यक नहीं है, क्योंकि इस डिवाइस के लिए नियंत्रक फर्मवेयर पहले से ही उपलब्ध है। यदि आप घड़ी के संचालन के तरीके को बदलना चाहते हैं या इसकी कार्यक्षमता का विस्तार करना चाहते हैं, तो यह कौशल आपके काम आएगा, उदाहरण के लिए, तापमान या आर्द्रता सेंसर जैसे अतिरिक्त तत्व जोड़कर।

आपको जिन उपकरणों की आवश्यकता होगी उनमें से:

  • बोर्ड बनाने के लिए एक सेट;
  • एमके प्रोग्रामर;
  • सोल्डरिंग आयरन।

आइए डिवाइस आरेख पर करीब से नज़र डालें। मुख्य नियंत्रण तत्व MK ATMega16A है, यह डिवाइस की निम्नलिखित विशेषताएं प्रदान करता है:

  1. उलटी गिनती और कैलेंडर। बिजली बंद होने पर भी चलता है।
  2. खतरे की घंटी। उनमें से 9 यहां हैं, आप उन्हें सप्ताह के दिनों में काम करने के लिए प्रोग्राम कर सकते हैं।
  3. तापमान माप। घड़ी का डिज़ाइन आपको कमरे में और सड़क पर माप के लिए दो तापमान सेंसर स्थापित करने की अनुमति देता है।
  4. रनिंग लाइन मोड। निम्नलिखित जानकारी देता है: सप्ताह का दिन, महीना, वर्ष, तापमान।
  5. घड़ी सुधार।

अधिकांश कार्य माइक्रोकंट्रोलर को सौंपे जाते हैं, जो आपको यथासंभव सर्किट को अनलोड करने और तत्वों की न्यूनतम संख्या का उपयोग करने की अनुमति देता है।

डिवाइस केवल दो microcircuits का उपयोग करता है: एक माइक्रोकंट्रोलर और एक TPIC6B595 शिफ्ट रजिस्टर, आप दो DS18B20 तापमान सेंसर भी कनेक्ट कर सकते हैं - एक आउटडोर और दूसरा इनडोर।

संकेत के लिए तीन 8 × 8 एलईडी मैट्रिक्स का उपयोग किया जाता है। डायोड D1 के रूप में Schottky डायोड का उपयोग करना बेहतर है। सर्किट में डायोड आपातकालीन शक्ति के लिए संक्रमण सुनिश्चित करता है, और Schottky डायोड में सबसे कम वोल्टेज ड्रॉप और उच्च स्विचिंग गति होती है।

निर्माण प्रक्रिया, निर्माण कार्यविधि:


ATMega 16A के साथ LED मैट्रिक्स पर घड़ी को असेंबल करते समय कुछ विशेषताएं निम्नलिखित वीडियो में उपलब्ध हैं।

एलईडी मैट्रिसेस पर घड़ियों के विभिन्न प्रकार के संकेत वाले उपकरणों पर कई फायदे हैं: वे सस्ते हैं, वे सूरज से प्रकाशित नहीं होते हैं, उनका उपयोग अधिक जानकारी प्रदर्शित करने के लिए किया जा सकता है। एलईडी मैट्रिसेस पर बड़ी संख्या में घड़ी मॉडल हैं, और सभी को आवश्यक कार्यक्षमता के साथ अपने लिए एक उपकरण मिल जाएगा। इसके अलावा, ऐसी घड़ियाँ स्वयं बनाना आसान है, जैसा कि आपने ऊपर चरण-दर-चरण मार्गदर्शिका से देखा है, इसके लिए विशेष उपकरण या विशेष कौशल की आवश्यकता नहीं होती है।

!
आज हम एड्रेसेबल एलईडी मैट्रिक्स के साथ मजा करेंगे। यह प्रोजेक्ट काफी जटिल है, लेकिन साथ ही हर कोई इसे दोहरा सकता है। परियोजना के लेखक एलेक्सगाइवर हैं।

पता योग्य एलईडी पट्टी में तीन-रंग के एलईडी होते हैं, जिनमें से प्रत्येक में एक विशेष माइक्रोक्रिकिट होता है।


एल ई डी में माइक्रोक्रिकिट एक दूसरे को सूचना प्रसारित करता है। यह आपको 16,000,000 रंगों और रंगों में से किसी एक के साथ टेप पर किसी भी एलईडी को रोशन करने की अनुमति देता है। और सबसे अच्छी बात यह है कि पूरी चीज एक तार से नियंत्रित होती है, हम बहुत दिलचस्प समय में रहते हैं।
टेप को एक माइक्रोकंट्रोलर द्वारा नियंत्रित किया जाता है, जैसे कि आर्डिनो प्लेटफॉर्म।


ऐसा गुच्छा अपने आप में बहुत दिलचस्प है और आप डिज़ाइन या होममेड उत्पादों में अनुप्रयोगों का एक गुच्छा पा सकते हैं, जो केवल लौ प्रभाव के लायक है। लेकिन आज हम उस बारे में बात नहीं करेंगे। क्या होता है यदि टेप को ज़िगज़ैग में रखा जाता है, और रखा जाता है ताकि एलईडी एक समान, नियमित ग्रिड बना सकें? यह सही है, एलईडी मैट्रिक्स। सुविधा के लिए, आप चीनी से तैयार मैट्रिक्स खरीद सकते हैं, और सबसे दिलचस्प बात यह है कि टेप खरीदने और टुकड़ों को तारों से जोड़ने में कई घंटे खर्च करने की तुलना में यह बहुत कम खर्च होता है।




उदाहरण के लिए, एक ऐसा 8X8 मैट्रिक्स है, जो सबसे सस्ता है, किसी के लिए इसके साथ खिलवाड़ करना आसान होगा।


आज की परियोजना की विशेषता इसकी बहुमुखी प्रतिभा और बहुमुखी प्रतिभा है, यानी, आप एक तैयार मैट्रिक्स खरीद सकते हैं, लेकिन यह बोलने के लिए छोटा है, लेकिन आप एलईडी की कम घनत्व वाली पट्टी भी खरीद सकते हैं और एक मैट्रिक्स बना सकते हैं इसके बारे में, कहते हैं, एक तस्वीर के साथ। यह अच्छा होने वाला है।
मैट्रिक्स विभिन्न पिक्सेल प्रभाव बनाने, चित्रों और जिफ़ (जीआईएफ) को प्रदर्शित करने, क्लासिक गेम और अन्य दिलचस्प चीजें बनाने के लिए शानदार अवसर प्रदान करता है। प्रोजेक्ट पृष्ठ पर जाना सुनिश्चित करें, वहां आपको सभी आवश्यक लिंक, फ़र्मवेयर, आरेख और अतिरिक्त निर्देश मिलेंगे।
इसलिए, मैट्रिक्स कंट्रोल टूल से लैस होकर, हमारे पास किसी भी एलईडी को उसके निर्देशांक के अनुसार रोशन करने की क्षमता है।


बढ़िया, आप सभी प्रकार के कूल प्रभाव कर सकते हैं। इसे आप अपने स्मार्टफोन से ब्लूटूथ के जरिए कंट्रोल कर सकते हैं। यही है, स्मार्टफोन ब्लूटूथ के माध्यम से कुछ कमांड भेजता है, मॉड्यूल उन्हें प्राप्त करता है और उन्हें आर्डिनो में स्थानांतरित करता है। और Arduino, बदले में, मैट्रिक्स को डेटा आउटपुट करता है।




लेखक ने एक ड्राइंग टूल बनाने का निर्णय लिया, ताकि आप मैट्रिक्स पर किसी भी एलईडी को रंग और प्रकाश चुन सकें।


पहला कदम Arduino के साथ एक संचार प्रोटोकॉल विकसित करना था।


इसमें पहला अंक मोड है, और बाकी विभिन्न सेटिंग्स और अन्य संचरित मूल्यों के लिए जिम्मेदार थे। फिर लेखक ने एक ग्राफिक क्षेत्र बनाया जिस पर उसने एक ग्रिड बनाया।

कार्यक्रम आपकी उंगली से क्षेत्र को छूने के निर्देशांक को ट्रैक करता है और इस स्थान पर किसी भी रंग के साथ एक वर्ग खींचता है। साथ ही, वर्ग के निर्देशांक Arduino को भेजे जाते हैं।

निर्माण के लिए हमें चाहिए:
1) पता करने योग्य एल ई डी पर मैट्रिक्स या टेप;
2) अरुडिनो;
3) ब्लूटूथ मॉड्यूल;
4) रोकनेवाला।


आप चीनी से एक पाउंड खरीद सकते हैं, या आप इसे किसी भी रेडियो स्टोर पर खरीद सकते हैं। हम घटकों को एक बहुत ही सरल योजना के अनुसार जोड़ते हैं:


आप ब्रेडबोर्ड पर सब कुछ एकत्र कर सकते हैं। फिर प्रोजेक्ट पेज से प्रोजेक्ट के साथ आर्काइव डाउनलोड करें, निर्देशों के अनुसार लाइब्रेरी इंस्टॉल करें और फर्मवेयर फाइल खोलें।




यहां हमारे पास सेटिंग्स हैं। अपने मैट्रिक्स का आकार, उसका प्रकार और कनेक्शन बिंदु निर्दिष्ट करें।

यदि आप स्वयं एक बड़ा मैट्रिक्स बनाते हैं, अर्थात टेप के टुकड़ों से मिलाप करते हैं, तो आपके पास चुनने के लिए 2 प्रकार हैं।


लेखक सही विकल्प चुनने की सलाह देता है, क्योंकि यह सोल्डर करना आसान है। अब यह मैट्रिक्स की शुरुआत, यानी इसके कनेक्शन के बिंदु और टेप के पहले टुकड़े की दिशा तय करने के लिए बनी हुई है। यह चीट शीट मैट्रिक्स के स्थान के लिए सभी 8 विकल्पों में मदद करेगी:


लेखक ने इस फर्मवेयर पर काफी समय बिताया है। कोड की मात्रा के हिसाब से यह लेखक की सबसे बड़ी परियोजना है। Arduino सिर्फ आंखों के लिए पैक किया जाता है, जैसा कि वे कहते हैं, nevpihuemoe।


तो, सेट अप करें, फर्मवेयर डाउनलोड करने के लिए क्लिक करें। डाउनलोड करने से पहले, आरएक्स पिन से ब्लूटूथ को डिस्कनेक्ट करना सुनिश्चित करें, अन्यथा आर्डिनो फ्लैश नहीं करेगा। सुविधा के लिए, आप स्विच को तार में मिलाप भी कर सकते हैं।


इसके बाद, अपने Android स्मार्टफोन पर GyverMatrixBT एप्लिकेशन इंस्टॉल करें। यह एप्लिकेशन Play Market में उपलब्ध है, यह पूरी तरह से निःशुल्क और विज्ञापनों के बिना है।


फिर ब्लूटूथ मॉड्यूल (पासवर्ड 1234 या 0000) के साथ पेयर करें, एप्लिकेशन में मॉड्यूल से कनेक्ट करें, और बस इतना ही। सेटिंग्स में, आप मैट्रिक्स की चमक और आकार को समायोजित कर सकते हैं जो आपके साथ-साथ इसके कुछ अन्य मापदंडों से मेल खाता है।

समायोजित आकार के अनुसार, हमारे पास ड्राइंग टैब में एक फ़ील्ड होगा। इसे आरंभ करने के लिए क्लिक करें। यहां आप टैप और स्वाइप से चित्र बना सकते हैं, मिटा सकते हैं, फ़ील्ड साफ़ कर सकते हैं और उसमें रंग भर सकते हैं।




सामान्य तौर पर, फिलहाल हमारे पास मैट्रिक्स में डेटा भेजने के लिए एक कार्यशील उपकरण है। आप आगे बढ़ सकते हैं। टेप या मॉड्यूल का एक बड़ा मैट्रिक्स बनाने के लिए लेखक द्वारा इस पूरी प्रणाली की कल्पना की गई थी। यह एक परियोजना के रूप में दिलचस्प है, एक शौक के रूप में, किसी को यह विज्ञापन उद्देश्यों के लिए, सजावट के लिए या डिजाइन के लिए, अच्छी तरह से, या सिर्फ मनोरंजन के लिए उपयोगी लग सकता है।

लेकिन इस रूप में मैट्रिक्स बहुत अच्छा नहीं दिखता है, पिक्सलेटेड नहीं है और आठ-बिट नहीं है। एक ग्रिड बनाना अत्यावश्यक है ताकि प्रत्येक एलईडी अपने स्वयं के वर्गाकार पिक्सेल बनाए और शीर्ष पर एक विसारक रखे। तभी सब कुछ बहुत अच्छा होगा। जाली को किसी भी सामग्री से फॉर्म और स्लैट्स में बनाया जा सकता है। यह कार्डबोर्ड हो सकता है, सोवियत लकड़ी के शासकों का एक पैकेट, या एक प्लास्टिक विकल्प (पीवीसी कोने), आप इसे एक निर्माण सामग्री की दुकान पर खरीद सकते हैं, जहां प्लास्टिक के पैनल और उनके लिए विभिन्न उत्पाद हैं। कोनों को लंबाई में तोड़ा जा सकता है, बीच के लिए कट बना सकते हैं और जाली को इकट्ठा कर सकते हैं। कार्डबोर्ड के बाद यह सबसे "सामूहिक खेत" विकल्प है।

और निश्चित रूप से आप 3डी प्रिंटर पर जाली को आराम और प्रिंट कर सकते हैं। तो चलिए ऐसा करते हैं।






तो, मैट्रिक्स बॉडी मुद्रित है। वैसे, लेखक का मानना ​​है कि काला सबसे अच्छा विकल्प नहीं है, झंझरी को सफेद रंग में प्रिंट करना बेहतर है ताकि यह प्रकाश को प्रतिबिंबित करे। खैर, इससे कोई फर्क नहीं पड़ता, हम इसे रंग देंगे।


दरअसल, यहां हमारा मैट्रिक्स बिना ग्रिड के है, एलईडी जैसे हैं।


हम ग्रेट लगाते हैं, यह तेज हो जाता है, ऐसा इसलिए है क्योंकि हम एक कोण से देखते हैं।


और अब देखें कि क्या होता है यदि आप कागज के एक पन्ने के रूप में एक विसारक जोड़ते हैं।


लेकिन मैट्रिक्स, किसी भी डिस्प्ले की तरह, आरजीबी कलर स्पेस में काम करता है, और अधिक सही रंग धारणा के लिए इसकी पृष्ठभूमि काली होनी चाहिए। लेखक ने कई विकल्पों की कोशिश की और फिल्म के लिए तय किया

कभी-कभी कई सात-खंड संकेतक या एक एलईडी मैट्रिक्स को माइक्रोकंट्रोलर से जोड़ने की आवश्यकता होती है, जबकि सूचना प्रदर्शित करने के लिए गतिशील संकेत का उपयोग किया जाता है। डायनेमिक इंडिकेशन का सार संकेतकों पर सूचना का क्रमिक प्रदर्शन है। नीचे दिया गया आरेख एक गतिशील संकेत को लागू करने के लिए कई सात-खंड संकेतक (उदाहरण के लिए, एक सामान्य कैथोड के साथ) को जोड़ने का एक उदाहरण दिखाता है, सामान्य तौर पर, बिंदु को ध्यान में रखते हुए, 8 खंड प्राप्त होते हैं, लेकिन पुराने तरीके से वे हैं उस तरह बुलाया। प्रतिरोधों के माध्यम से माइक्रोकंट्रोलर से जुड़े कुल 8 लाइनों के लिए एक ही नाम के खंडों के सभी निष्कर्ष (एनोड्स) एक साथ जुड़े हुए हैं। प्रत्येक संकेतक का सामान्य कैथोड एक ट्रांजिस्टर के माध्यम से माइक्रोकंट्रोलर से जुड़ा होता है।


संकेत एल्गोरिथ्म इस प्रकार है: सबसे पहले, हम लाइनों पर आवश्यक तार्किक स्तर निर्धारित करते हैं, जिसके आधार पर पहले संकेतक (बाएं से दाएं संकेत) पर कौन से खंड चालू होने चाहिए, उच्च तार्किक स्तर चालू करने के लिए, कम करने के लिए खंड बंद करें। अगला, हम ट्रांजिस्टर VT1 के आधार पर एक उच्च तर्क स्तर लागू करते हैं, जिससे पहले संकेतक का सामान्य कैथोड सामान्य तार से जुड़ा होता है, इस समय वे खंड प्रकाश करते हैं, जिनके एनोड पर एक तार्किक इकाई होती है। एक निश्चित समय (विराम) के बाद, हम ट्रांजिस्टर के आधार पर एक निम्न तर्क स्तर लागू करके संकेतक को बंद कर देते हैं, फिर दूसरे संकेतक के लिए आउटपुट जानकारी के अनुसार लाइनों पर तर्क स्तर को फिर से बदलते हैं, और एक भेजते हैं ट्रांजिस्टर VT2 को टर्न-ऑन सिग्नल। इस प्रकार, एक परिपत्र चक्र में क्रम में, हम सभी संकेतक स्विच करते हैं, यह संपूर्ण गतिशील संकेत है।

झिलमिलाहट के बिना एक ठोस छवि प्राप्त करने के लिए, एल ई डी की झिलमिलाहट को रोकने के लिए स्विचिंग को उच्च गति पर किया जाना चाहिए, ताज़ा दर 70 हर्ट्ज या अधिक से सेट की जानी चाहिए, मैं आमतौर पर इसे 100 हर्ट्ज पर सेट करता हूं। उपरोक्त निर्माण के लिए, ठहराव की गणना निम्नानुसार की जाती है: 100 हर्ट्ज की आवृत्ति के लिए, अवधि 10 एमएस है, क्रमशः केवल 4 संकेतक हैं, प्रत्येक संकेतक का चमक समय 10/4 = 2.5 एमएस पर सेट है। एक आवास में बहु-अंकीय सात-खंड संकेतक हैं, जिसमें एक ही नाम के खंड आवास के अंदर ही जुड़े हुए हैं, निश्चित रूप से, उनका उपयोग करने के लिए, गतिशील संकेत का उपयोग करना आवश्यक है।

डायनेमिक इंडिकेशन को लागू करने के लिए, किसी एक टाइमर के ओवरफ्लो पर इंटरप्ट का उपयोग करना आवश्यक है। नीचे TMR0 टाइमर का उपयोग करने वाला कोड है:

;4 सात-खंड संकेतकों के लिए गतिशील संकेत का कार्यान्वयन;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; स्वैप स्थिति, डब्ल्यू; सीएलआरएफ स्थिति; movwf STATUS_TEMP; ; बीसीएफ इंडेक्स 1, पहला इंडिकेटर बीसीएफ इंड 2 बंद करें, दूसरा इंडिकेटर बीसीएफ इंड 3 बंद करें, तीसरा इंडिकेटर बीसीएफ इंड 4 बंद करें, चौथा इंडिकेटर बंद करें; incf shet,F;increment register shet movlw .5; check register content shet xorwf shet,W ;जाँच करें कि क्या यह 5 btfss STATUS,Z के बराबर है; goto met1; शीट रजिस्टर में संख्या 5 movlw के बराबर नहीं है। 1; शीट रजिस्टर में संख्या 5 है: नंबर 1 movwf शीट लिखें; शीट रजिस्टर में; met1 movlw .1 रजिस्टर सामग्री शीट xorwf shet,W की जांच करें, संख्या 1 btfss स्थिति के बराबर, Z; गोटो met2; शेत रजिस्टर में संख्या 1 के बराबर नहीं है: मेट 2 movf datind1,W पर जाएं; शेत रजिस्टर में संख्या 1 के बराबर है: movwf PORTB कॉपी करें; PORTB रजिस्टर bsf ind1 के लिए datind1 रजिस्टर की सामग्री; पहला संकेतक met2 चालू करें movlw .2 रजिस्टर शीट xorwf shet,W की सामग्री की जांच करें, 2 btfss स्थिति, Z के बराबर; गोटो met3; शेत रजिस्टर में संख्या 2 के बराबर नहीं है: met3 movf datind2,W पर जाएं; शेत रजिस्टर में संख्या 2 है: movwf PORTB कॉपी करें; datind2 की सामग्री PORTB रजिस्टर bsf ind2 पर रजिस्टर करें; दूसरा संकेतक गोटो एक्सिट चालू करें; पर जाएं लेबल से बाहर निकलें met3 movlw .3 रजिस्टर सामग्री की जांच करें शीट xorwf shet,W 3 btfss स्थिति के बराबर, Z; गोटो met4; शेत रजिस्टर में संख्या 3 के बराबर नहीं है: met4 movf datind3,W पर जाएं; शेत रजिस्टर में संख्या 3 है: movwf PORTB कॉपी करें; datind3 रजिस्टर की सामग्री PORTB रजिस्टर bsf ind3 पर रजिस्टर करें; तीसरा संकेतक गोटो एक्सिट चालू करें; लेबल से बाहर निकलें met4 movf datind4,W; datind3 रजिस्टर movwf PORTB की सामग्री कॉपी करें; PORTB रजिस्टर bsf ind4 में; चौथा संकेतक चालू करें; movlw .100; टाइमर रजिस्टर TMR0 movwf TMR0 पर 156 लिखें; ; मूववफ स्थिति; स्वैप W_TEMP, एफ; स्वैप W_TEMP, डब्ल्यू; ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; मुख्य कार्यक्रम ................ movlw b"11010011"; OPTION_REG, जिससे आंतरिक सेटिंग; प्रीस्कूलर अनुपात 1:16 सेट करना; clrf shet ; शुरू करने से पहले रजिस्टर शीट को रीसेट करें , ओवरफ्लो TMR0 पर इंटरप्ट करता है , प्रदर्शन किया ; clrf datind1; clrf datind2; संकेतकों को जानकारी आउटपुट करने के लिए रजिस्टरों को साफ़ करना, यह clrf datind3; संकेतकों को बंद करने के बराबर है, एक सामान्य clrf datind4; कैथोड के संकेतक के रूप में; bcf INTCON, T0IF; स्पष्ट TMR0 ओवरफ्लो इंटरप्ट फ्लैग bsf INTCON, T0IE; सक्षम TMR0 ओवरफ्लो इंटरप्ट्स bsf INTCON, GIE; ग्लोबल इंटरप्ट सक्षम करें; movlw b"00000110"; 13.52 आउटपुट उदाहरण movwf datind1; movlw बी "11001111"; movwf दिनांक 2; movlw बी "01101101"; movwf दिनांक 3; movlwb"01011011"; movwf दिनांक 4; ; . ................; .................; .................; ; अंत; पूरे कार्यक्रम का अंत;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;चार सात-खंड संकेतकों के लिए गतिशील संकेत का कार्यान्वयन

;उदाहरण घड़ी आवृत्ति 4 मेगाहर्ट्ज, मशीन चक्र 1 µs

org 0000h ; कार्यक्रम का निष्पादन 0000h पते पर प्रारंभ करें

गोटो स्टार्ट; लेबल स्टार्ट पर जाएं

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; बाधित दिनचर्या

org 0004h; पता 0004h पर सबरूटीन निष्पादन शुरू करें

movwf W_TEMP; कुंजी रजिस्टर मान सहेजें

स्वैप स्थिति, डब्ल्यू;

movwf STATUS_TEMP;

बीसीएफ इंडेक्स 1; पहला संकेतक बंद करें

बीसीएफ इंड 2; दूसरा संकेतक बंद करें

बीसीएफ इंड 3; तीसरा संकेतक बंद करें

बीसीएफ इंडेक्स 4; चौथा संकेतक बंद करें

इंकफ शीट, एफ; इंक्रीमेंट रजिस्टर शीट

movlw.5 रजिस्टर शीट की सामग्री की जाँच करें

xorwf शेट, डब्ल्यू; 5 के बराबर

बीटीएफएसएस स्थिति, जेड;

गोटो मेट1; रजिस्टर शीट में संख्या 5 के बराबर नहीं है

movlw.1;शेट रजिस्टर में संख्या 5 है: संख्या 1 लिखें

movwf shet ;शेट दर्ज करने के लिए

met1 movlw.1, शेेट रजिस्टर की सामग्री की जांच करें

xorwf shet, W; संख्या 1 के बराबर

बीटीएफएसएस स्थिति, जेड;

गोटो मेट2; शीट रजिस्टर में संख्या 1 के बराबर नहीं: सीधे मेट2 पर जाएं

movf datind1,W;शेट रजिस्टर में संख्या 1 है: कॉपी

movwf PORTB; PORTB रजिस्टर में datind1 रजिस्टर की सामग्री

bsf ind1, पहला संकेतक चालू करें

गोटो एक्सिट; लेबल एक्सिट पर जाएं

met2 movlw .2, शेेट रजिस्टर की सामग्री की जांच करें

xorwf shet, W; संख्या 2 के बराबर

बीटीएफएसएस स्थिति, जेड;

गोटो मेट 3; शीट रजिस्टर में संख्या 2 के बराबर नहीं है: मेट 3 पर जाएं

movf datind2,W;शेट रजिस्टर में संख्या 2 है: कॉपी

movwf PORTB; PORTB रजिस्टर में datind2 रजिस्टर की सामग्री

bsf ind2; दूसरा इंडिकेटर चालू करें

गोटो एक्सिट; लेबल एक्सिट पर जाएं

met3 movlw .3, शेेट रजिस्टर की सामग्री की जांच करें

xorwf shet, W; संख्या 3 के बराबर

बीटीएफएसएस स्थिति, जेड;

गोटो मेट4; शीट रजिस्टर में संख्या 3 के बराबर नहीं है: सीधे मेट4 पर जाएं

movf datind3,W; शीट रजिस्टर में संख्या 3 है: कॉपी

movwf PORTB; PORTB रजिस्टर में datind3 रजिस्टर की सामग्री

bsf ind3, तीसरा इंडिकेटर चालू करें

गोटो एक्सिट; लेबल एक्सिट पर जाएं

met4 movf datind4,W; datind3 रजिस्टर की सामग्री कॉपी करें

movwf PORTB; to PORTB रजिस्टर

bsf ind4; चौथा संकेतक चालू करें

Exxit bcf INTCON, T0IF; TMR0 ओवरफ्लो इंटरप्ट फ्लैग को रीसेट करें

movlw .100; टाइमर रजिस्टर TMR0 पर नंबर 156 लिखें

स्वैप STATUS_TEMP, W ; कुंजी रजिस्टरों की सामग्री को पुनर्स्थापित करें

स्वैप W_TEMP, एफ;

स्वैप W_TEMP, डब्ल्यू;

retfie; इंटरप्ट रूटीन से बाहर निकलें

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; मुख्य कार्यक्रम

प्रारंभ ................. रजिस्टरों की प्रारंभिक सेटिंग

................. ;विशेष प्रयोजन

.................

bsf STATUS, RP0; रजिस्टर करने के लिए बाइनरी नंबर 11010011 लिखें

movlw b"11010011" ;OPTION_REG, जिससे आंतरिक सेट हो जाता है

movwf OPTION_REG; TMR0 के लिए क्लॉक सोर्स

बीसीएफ स्थिति, RP0; TMR0 से पहले प्रीस्कूलर को सक्षम करें

प्रीस्कूलर अनुपात को 1:16 पर सेट करें

clrf shet; शुरू करने से पहले शीट रजिस्टर को रीसेट करें

; अतिप्रवाह व्यवधान TMR0, प्रदर्शन किया

एक बार बिजली चालू होने के बाद

clrf datind1 ; सूचनाओं को आउटपुट करने के लिए स्पष्ट रजिस्टर

clrf datind2; संकेतक, बंद के बराबर

clrf datind3; संकेतक, एक सामान्य के साथ संकेतक के बाद से

clrf datind4; कैथोड

bcf INTCON, T0IF; TMR0 ओवरफ्लो इंटरप्ट फ्लैग को रीसेट करें

bsf INTCON, T0IE; TMR0 ओवरफ्लो इंटरप्ट को सक्षम करें

bsf INTCON, GIE; वैश्विक व्यवधान सक्षम करें

movlw b"00000110"; 13.52 आउटपुट उदाहरण

movlw बी "11001111";

movlw बी "01101101";

movlwb"01011011";

................. ;

................. ;

................. ;

अंत; पूरे कार्यक्रम का अंत

मुख्य कार्यक्रम में, हम पहले OPTION_REG रजिस्टर का उपयोग करके एक टाइमर सेट करते हैं, पहले मैंने टाइमर के उपयोग के बारे में बात की थी। अगला, हम शीट रजिस्टर को साफ़ करते हैं, जिसका उद्देश्य प्रत्येक संकेतक के लिए 1 से 4 तक की गिनती दर्ज करना है। इस रजिस्टर को इंटरप्ट सर्विस रूटीन में बढ़ाया जाता है और वहां समायोजित किया जाता है (यह 1 से 4 तक गिना जाएगा), इसलिए यह समाशोधन पावर-अप के बाद एक बार किया जाता है। इस रजिस्टर के आधार पर, हम यह निर्धारित करेंगे कि किस संकेतक को शामिल करना है और इसके अनुरूप डेटा जारी करना है। अगला कदम सूचना भंडारण रजिस्टरों को साफ करना है, चार संकेतकों के अनुरूप चार डेटा और 1,2,3,4 रजिस्टर। क्लियरिंग इंडिकेटर को बंद करने के बराबर है, क्योंकि इंटरप्ट सर्विस रूटीन में, इन रजिस्टरों की सामग्री को PORTB रजिस्टर में स्थानांतरित कर दिया जाता है, जिससे इंडिकेटर एनोड जुड़े होते हैं। यह आवश्यक है ताकि इंटरप्ट्स सक्षम होने के बाद संकेतकों पर कोई कचरा प्रदर्शित न हो, सिद्धांत रूप में यह नहीं किया जा सकता है यदि सही जानकारी तुरंत आउटपुट के लिए लिखी जाती है। अगला, टाइमर ओवरफ्लो इंटरप्ट फ्लैग को रीसेट करें, TMR0 ओवरफ्लो इंटरप्ट को सक्षम करें, और अंत में ग्लोबल इंटरप्ट को सक्षम करें।

इंटरप्ट रूटीन में, हम सबसे पहले सभी संकेतकों को बंद कर देते हैं (ट्रांजिस्टर के आधारों पर निम्न तर्क स्तरों को लागू करके), क्योंकि यह ज्ञात नहीं है कि कौन सा चालू है। हम शीट रजिस्टर को बढ़ाते हैं, संख्या 5 की समानता की जाँच करते हैं, यदि ऐसा कोई मैच है, तो नंबर 1 को रजिस्टर में लिखें, क्योंकि 1 से 4 तक गिनना आवश्यक है। इसके बाद, हम जाँचते हैं कि शीट में कौन सी संख्या है रजिस्टर, जिसके द्वारा हम संबंधित संकेतक के लिए PORTB से डेटा को PORTB सूचना भंडारण रजिस्टर (डेटाइंड) में लोड करते हैं और इसे चालू करते हैं। उसके बाद, हम TMR0 ओवरफ्लो इंटरप्ट फ्लैग को रीसेट करते हैं, टाइमर में नंबर 100 लिखते हैं (इस मान की गणना नीचे दी गई है), एक समय की देरी के लिए, और इंटरप्ट हैंडलर से बाहर निकलें। पहली रुकावट पर, पहला संकेतक चालू होता है, दूसरी रुकावट पर, दूसरा और इसी तरह एक गोलाकार चक्र में। मुख्य कार्यक्रम में, यह केवल प्रत्येक संकेतक के लिए सूचना भंडारण रजिस्टरों में डेटा लोड करने के लिए रहता है। इंटरप्ट सबरूटीन में, कुंजी रजिस्टरों के मूल्यों को सहेजना और पुनर्स्थापित करना न भूलें, मैंने इसके बारे में एक लेख में लिखा था।

संख्याओं को आउटपुट करने के लिए, डेटा तालिका के रूप में वर्ण जनरेटर का उपयोग करना बेहतर होता है। उदाहरण के लिए, संकेतकों पर संख्या 3456 प्रदर्शित करने के लिए, इसे अंकों में विभाजित किया जाना चाहिए, जबकि अंकों की संख्या (0 से 9 तक) को संग्रहीत करने के लिए अलग-अलग रजिस्टरों का उपयोग करना बेहतर होता है, फिर इन रजिस्टरों को वर्ण जनरेटर के माध्यम से चलाएं, जिससे संबंधित खंडों को प्रज्वलित करने के लिए सही बाइट्स (डेटाइंड रजिस्टरों में लोड) प्राप्त करना।

हम घड़ी जनरेटर की आवृत्ति 4 मेगाहर्ट्ज के रूप में लेंगे, मशीन चक्र 1 μs है। बता दें कि प्रत्येक संकेतक की ताज़ा दर क्रमशः 100 हर्ट्ज (अवधि टी = 10 एमएस) है, आवश्यक समय की देरी 10/4 = 2.5 एमएस है। TMR0 के लिए प्रीस्कूलर कारक 1:16 पर सेट है, जबकि अधिकतम संभव विलंब 256x16 = 4096 µs है, और हमें 2.5 ms के ठहराव की आवश्यकता है। TMR0 में लिखने के लिए संख्या की गणना करते हैं: 256-((256x2.5)/4.096) = 256-156.25 = 99.75। राउंड करने के बाद हमें 100 नंबर मिलता है।

नीचे आप PIC16F628A माइक्रोकंट्रोलर का उपयोग करके एक सामान्य कैथोड के साथ 4-अंकीय संकेतक पर गतिशील संकेत के कार्यान्वयन के साथ प्रोटीन प्रोग्राम, फर्मवेयर और स्रोत कोड के लिए एक मॉडल डाउनलोड कर सकते हैं। उदाहरण के लिए, संख्या 0000 सूचक पर प्रदर्शित होती है; 0001; 0002; 13.52; 9764.

अब मैट्रिक्स को 8x8 पिक्सेल (एलईडी) के रिज़ॉल्यूशन से जोड़ने पर विचार करें। एक मैट्रिक्स की संरचना को आमतौर पर पंक्तियों और स्तंभों के संदर्भ में माना जाता है। नीचे दी गई तस्वीर में, प्रत्येक कॉलम में, सभी एल ई डी के कैथोड जुड़े हुए हैं, और प्रत्येक पंक्ति में, एनोड। स्ट्रिंग्स (8 लाइनें, एलईडी एनोड्स) प्रतिरोधों के माध्यम से माइक्रोकंट्रोलर से जुड़े हुए हैं। प्रत्येक स्तंभ (एलईडी कैथोड) 8 ट्रांजिस्टर के माध्यम से माइक्रोकंट्रोलर से जुड़ा होता है। संकेत एल्गोरिथ्म समान है, पहले हम पंक्तियों पर आवश्यक तार्किक स्तर निर्धारित करते हैं, जिसके अनुसार एलईडी को कॉलम में प्रकाश करना चाहिए, फिर हम पहले कॉलम (बाएं से दाएं संकेत) को जोड़ते हैं। एक निश्चित ठहराव के बाद, हम कॉलम को बंद कर देते हैं, और दूसरे कॉलम को प्रदर्शित करने के लिए लाइनों पर तार्किक स्तर बदलते हैं, फिर हम दूसरे कॉलम को जोड़ते हैं। और इसलिए बारी-बारी से सभी कॉलमों को कम्यूट करें। नीचे मैट्रिक्स को माइक्रोकंट्रोलर से जोड़ने का आरेख है।


कुल मिलाकर, इस तरह के मैट्रिक्स को जोड़ने के लिए 16 माइक्रोकंट्रोलर पिन की आवश्यकता होती है, जो काफी अधिक है, इसलिए नियंत्रण रेखा को कम करने के लिए सीरियल शिफ्ट रजिस्टर का उपयोग करना बेहतर है।

सबसे आम सीरियल रजिस्टर 74HC595 माइक्रोक्रिकिट है, जिसमें डेटा लोड करने के लिए एक शिफ्ट रजिस्टर और एक होल्ड रजिस्टर होता है, जिसके माध्यम से डेटा को आउटपुट लाइनों में स्थानांतरित किया जाता है। इसमें डेटा लोड करना सरल है, तार्किक 0 को SH_CP क्लॉक इनपुट पर सेट करें, फिर DS डेटा इनपुट पर आवश्यक लॉजिक लेवल सेट करें, जिसके बाद हम लेवल वैल्यू (DS इनपुट पर) को सेव करते हुए क्लॉक इनपुट को 1 पर स्विच करते हैं। शिफ्ट रजिस्टर के अंदर। उसी समय, डेटा को एक बिट द्वारा स्थानांतरित किया जाता है। SH_CP आउटपुट को फिर से 0 पर रीसेट करें, DS इनपुट पर आवश्यक स्तर सेट करें और SH_CP को 1 तक बढ़ाएँ। शिफ्ट रजिस्टर पूरी तरह से लोड होने के बाद (8 बिट), ST_CP आउटपुट को 1 पर सेट करें, इस समय डेटा को स्थानांतरित कर दिया जाता है भंडारण रजिस्टर और आउटपुट लाइनों Q0 ... Q7 को खिलाया जाता है, जिसके बाद हम ST_CP के आउटपुट को रीसेट करते हैं। क्रमिक लोडिंग के दौरान, डेटा को Q0 से Q7 में स्थानांतरित कर दिया जाता है। पिन Q7' शिफ्ट रजिस्टर के अंतिम बिट से जुड़ा है, इस पिन को दूसरे माइक्रोक्रिकिट के इनपुट से जोड़ा जा सकता है, जिससे आप डेटा को एक बार में दो या अधिक माइक्रोक्रिस्किट में लोड कर सकते हैं। OE पिन आउटपुट लाइनों को तीसरी (उच्च-प्रतिरोध) स्थिति में स्विच करता है जब उस पर एक तर्क 1 लागू होता है। MR पिन को शिफ्ट रजिस्टर को रीसेट करने के लिए डिज़ाइन किया गया है, अर्थात, रजिस्टर ट्रिगर्स के आउटपुट पर निम्न तर्क स्तर सेट करना , जो आठ शून्य लोड करने के बराबर है। नीचे 74NS595 microcircuit में डेटा लोड करने का आरेख है, जो आउटपुट लाइनों Q0 ... Q7 पर मान 11010001 सेट करता है, बशर्ते कि प्रारंभ में शून्य थे:


दो 74HC595 शिफ्ट रजिस्टरों का उपयोग करके एक PIC16F628A माइक्रोकंट्रोलर से 8×8 मैट्रिक्स को जोड़ने पर विचार करें, आरेख नीचे दिखाया गया है:


डेटा को DD2 चिप (पंक्तियों पर तर्क स्तर नियंत्रण, एलईडी एनोड) में लोड किया जाता है, फिर इसे क्रमशः Q7 पिन के माध्यम से DD3 (कॉलम नियंत्रण) में स्थानांतरित किया जाता है, पहले हम कॉलम को सक्षम करने के लिए बाइट लोड करते हैं, फिर बाइट पंक्तियों पर तार्किक स्तरों के साथ। ट्रांजिस्टर स्विचिंग मैट्रिक्स कॉलम (एलईडी कैथोड) डीडी3 की आउटपुट लाइनों से जुड़े हैं। मैट्रिक्स पर छवि प्रदर्शित करने के लिए प्रोग्राम कोड नीचे दिया गया है:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 8x8 के रिज़ॉल्यूशन के साथ मैट्रिक्स के लिए डायनेमिक इंडिकेशन का कार्यान्वयन; उदाहरण के लिए घड़ी जनरेटर की आवृत्ति 4 मेगाहर्ट्ज, मशीन चक्र 1 µs org 0000h; पता 0000h गोटो स्टार्ट से प्रोग्राम निष्पादन शुरू करें; लेबल स्टार्ट पर जाएं ;;;;;; ;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;रुटीन org 0004h को बाधित करें; पता 0004h movwf W_TEMP से सबरूटीन निष्पादन शुरू करें; कुंजी रजिस्टर मान स्वैप स्थिति, W सहेजें; सीएलआरएफ स्थिति; movwf STATUS_TEMP; ; movwf FSR_osn; FSR_osn रजिस्टर में movf FSR_prer, W; FSR_prer रजिस्टर से FSR रजिस्टर के पहले से सहेजे गए मूल्य movwf FSR को पुनर्स्थापित करना ;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; स्टॉलब रजिस्टर की सामग्री को चिप मूव स्टोलब, डब्ल्यू में लोड करें; स्टोलब रजिस्टर movwf var की सामग्री को कॉपी करें; रजिस्टर var met2 btfsc var, 0; btfss var, 0 के अनुसार आउटपुट ds सेट करें; बीसीएफ डीएस; बीसीएफ sh_cp; rrf var,F ;शिफ्ट रजिस्टर var को तैयार करने का अधिकार; ;;;;;;;;;;;;;;;;;;;;;;;;;;;; INDF रजिस्टर की सामग्री को चिप में लोड करें; 74HC595 (सीरियल शिफ्ट रजिस्टर) movf INDF,W; INDF रजिस्टर movwf var की सामग्री को कॉपी करें; movwf scetbit की गिनती के लिए; हस्तांतरित बिट्स met1 btfsc var, 7; bsf ds के अनुसार आउटपुट ds सेट करें; रजिस्टर var btfss var, 7 के 7 वें बिट का मान; बीसीएफ डीएस; bsf sh_cp; क्लॉक sh_cp आउटपुट डेटा लैच करने के लिए bcf sh_cp; rlf var, F; शिफ्ट रजिस्टर वर तैयार करने के लिए छोड़ दिया; अगला बिट decfsz scetbit, F; रजिस्टर स्थिति के साथ कमी scetbit goto met1; scetbit शून्य के बराबर नहीं: लेबल met1 पर जाएं; bsf st_cp; लोड किए गए bcf st_cp को स्थानांतरित करने के लिए आउटपुट st_cp को क्लॉक करें; बाइट्स को 74HC595 चिप्स की आउटपुट लाइनों में; बीसीएफ स्थिति, सी; शिफ्ट आरआरएफ स्टॉलब, एफ से पहले रजिस्टर स्थिति के सी बिट को रीसेट करें; बाएं शिफ्ट रजिस्टर स्टॉलब; incf FSR,F; इंक्रीमेंट FSR रजिस्टर, आगे तैयार करें; 74HC595 decfsz shet,F को डेटा भेजने के लिए रजिस्टर करें; रजिस्टर कंडीशन के साथ गिरावट शीट गोटो एक्सिट; शीट रजिस्टर 0 के बराबर नहीं: मूव डेटा1 से बाहर निकलने के लिए जंप करें;शेट रजिस्टर 0 के बराबर: पता पहले movwf FSR लिखें; FSR रजिस्टर movlw.8 में जानकारी संग्रहीत करने के लिए रजिस्टर करें; movwf शीट बनाए रखने के लिए शीट रजिस्टर में नंबर 8 लिखना; Exxit bcf INTCON,T0IF ;रीसेट ओवरफ्लो इंटरप्ट फ्लैग TMR0 movlw । 124; टाइमर रजिस्टर TMR0 movwf TMR0 पर नंबर 124 लिखें; ; movf FSR, W; FSR movwf FSR_prer के वर्तमान मान को सहेजें; Swapf STATUS_TEMP, W ; कुंजी रजिस्टरों की सामग्री को पुनर्स्थापित करें movwf स्थिति ; स्वैप W_TEMP, एफ; स्वैप W_TEMP, डब्ल्यू; ; retfie; इंटरप्ट सबरूटीन से बाहर निकलें;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; मुख्य कार्यक्रम प्रारंभ ................ ; रजिस्टरों की प्रारंभिक सेटिंग ................ ; विशेष प्रयोजन ..... ........... bsf स्थिति, RP0; रजिस्टर movlw b"11010010" में बाइनरी नंबर 11010011 लिखें; OPTION_REG, जिससे आंतरिक movwf OPTION_REG सेट हो; टीएमआर0, प्रीस्कूलर अनुपात 1:8 सेट करें; movlw .8; movwf shet शुरू करने से पहले, शीट रजिस्टर में नंबर 8 लिखें; tmr0 ओवरफ्लो इंटरप्ट्स, निष्पादित; एक बार, movlw b"10000000" पर पावर के बाद; movwf स्टॉलब पर बाइनरी नंबर 10000000 लिखें; स्टोलब रजिस्टर, पहला कॉलम सक्षम करने के लिए; है बिजली चालू करने के बाद एक बार प्रदर्शन किया; movlw data1; FSR_prer रजिस्टर में पहले रजिस्टर (स्टोरेज रजिस्टर movwf FSR_prer; सूचना) का पता लिखें, प्रदर्शन किया; बिजली चालू होने के एक बार; movlw .8; movwf tmp; मैट्रिक्स के लिए सूचना आउटपुट के 8 रजिस्टरों को साफ़ करना, movlw data1 को बंद करने के बराबर; मैट्रिक्स movwf FSR; met3 clrf INDF; आईसीएफ एफएसआर, एफ; डीईएफ़एसज़ टीएमपी, एफ; गोटो मेट 3; ; bcf INTCON, T0IF; स्पष्ट TMR0 ओवरफ्लो इंटरप्ट फ्लैग bsf INTCON, T0IE; सक्षम TMR0 ओवरफ्लो इंटरप्ट्स bsf INTCON, GIE; ग्लोबल इंटरप्ट सक्षम करें; m1 movlw data1, आर आउटपुट उदाहरण movwf FSR; movlw बी "00000000"; मूववफ आईएनडीएफ; आईसीएफ एफएसआर, एफ; movlw बी "01111111"; मूववफ आईएनडीएफ; आईसीएफ एफएसआर, एफ; movlwb"00001001"; मूववफ आईएनडीएफ; आईसीएफ एफएसआर, एफ; movlwb"00011001"; मूववफ आईएनडीएफ; आईसीएफ एफएसआर, एफ; movlwb"00101001"; मूववफ आईएनडीएफ; आईसीएफ एफएसआर, एफ; movlw बी "01000110"; मूववफ आईएनडीएफ; आईसीएफ एफएसआर, एफ; movlw बी "00000000"; मूववफ आईएनडीएफ; आईसीएफ एफएसआर, एफ; movlw बी "00000000"; मूववफ आईएनडीएफ; ; .................; .................; .................; ; अंत; पूरे कार्यक्रम का अंत;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

8x8 के संकल्प के साथ एक मैट्रिक्स के लिए गतिशील संकेत का कार्यान्वयन

;उदाहरण घड़ी आवृत्ति 4 मेगाहर्ट्ज, मशीन चक्र 1 µs

org 0000h ; कार्यक्रम का निष्पादन 0000h पते पर प्रारंभ करें

गोटो स्टार्ट; लेबल स्टार्ट पर जाएं

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; बाधित दिनचर्या

org 0004h; पता 0004h पर सबरूटीन निष्पादन शुरू करें

movwf W_TEMP; कुंजी रजिस्टर मान सहेजें

स्वैप स्थिति, डब्ल्यू;

movwf STATUS_TEMP;

movf FSR, W; FSR रजिस्टर के वर्तमान मूल्य को बचाएं

movwf FSR_osn; to FSR_osn रजिस्टर

movf FSR_prer, W; पहले से सहेजे गए मान को पुनर्स्थापित करें

FSR_prer से movwf FSR; FSR

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;74HC595 (सीरियल शिफ्ट रजिस्टर)

मूव स्टोलब, डब्ल्यू; स्टोलब रजिस्टर की सामग्री कॉपी करें

movwf var; var रजिस्टर करने के लिए

movlw .8; गिनती के लिए scetbit रजिस्टर में नंबर 8 लिखें

movwf scetbit; प्रेषित बिट्स

met2 btfsc var,0; के अनुसार ds आउटपुट सेट करें

बीएसएफ डीएस; रजिस्टर var का 7वां बिट मान

bsf sh_cp; घड़ी sh_cp डेटा लैच करने के लिए आउटपुट

आरआरएफ वर, एफ; शिफ्ट रजिस्टर वर तैयार करने का अधिकार

; अगला बिट

decfsz scetbit, F; scetbit रजिस्टर स्थिति के साथ कमी

गोटो मेट2; स्कैबिट शून्य के बराबर नहीं: सीधे मेट2 लेबल पर जाएं

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;74HC595 (सीरियल शिफ्ट रजिस्टर)

Movf INDF, W; रजिस्टर INDF की सामग्री कॉपी करें

movwf var; var रजिस्टर करने के लिए

movlw .8; गिनती के लिए scetbit रजिस्टर में नंबर 8 लिखें

movwf scetbit; प्रेषित बिट्स

met1 btfsc var,7; के अनुसार ds आउटपुट सेट करें

बीएसएफ डीएस; रजिस्टर var का 7वां बिट मान

bsf sh_cp; घड़ी sh_cp डेटा लैच करने के लिए आउटपुट

rlf var, F; लेफ्ट शिफ्ट वर तैयार करने के लिए

; अगला बिट

decfsz scetbit, F; scetbit रजिस्टर स्थिति के साथ कमी

गोटो मेट1;स्सेटबिट जीरो के बराबर नहीं: सीधे लेबल मेट1 पर जाएं

bsf st_cp; लोड किए गए ट्रांसफर के लिए st_cp के आउटपुट को क्लॉक करें

बीसीएफ st_cp; बाइट्स प्रति 74HC595 आउटपुट लाइनें

बीसीएफ स्थिति, सी; शिफ्ट से पहले स्थिति रजिस्टर के सी बिट को साफ़ करें

आरआरएफ स्टोलब, एफ; लेफ्ट शिफ्ट रजिस्टर स्टोलब

incf FSR,F ;increment FSR रजिस्टर, अगली तैयारी करें

; 74HC595 पर डेटा भेजने के लिए रजिस्टर करें

defsz shet, F; रजिस्टर कंडीशन शीट के साथ कमी

गोटो एक्सिट; शीट रजिस्टर 0 के बराबर नहीं है: बाहर निकलने के लिए कूदें

movlw data1; शीट रजिस्टर 0 है: पहले का पता लिखें

movwf FSR; FSR में जानकारी स्टोर करने के लिए रजिस्टर करें

movlw .8; संदर्भ के लिए शीट रजिस्टर में नंबर 8 लिखें

Movwf शीट; कॉलम मायने रखता है

movlw b"10000000"; इसमें बाइनरी नंबर 10000000 लिखें

पहला कॉलम शामिल करने के लिए movwf स्टॉलब; रजिस्टर स्टॉलब

Exxit bcf INTCON, T0IF; TMR0 ओवरफ्लो इंटरप्ट फ्लैग को रीसेट करें

movlw .124; टाइमर रजिस्टर TMR0 पर नंबर 124 लिखें

movf FSR, W; FSR रजिस्टर के वर्तमान मूल्य को बचाएं

FSR_prer रजिस्टर करने के लिए movwf FSR_prer

movf FSR_osn, W; पहले से सहेजे गए मान को पुनर्स्थापित करें

FSR_osn से movwf FSR; FSR

स्वैप STATUS_TEMP, W ; कुंजी रजिस्टरों की सामग्री को पुनर्स्थापित करें

स्वैप W_TEMP, एफ;

स्वैप W_TEMP, डब्ल्यू;

retfie; इंटरप्ट रूटीन से बाहर निकलें

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; मुख्य कार्यक्रम

प्रारंभ ................. रजिस्टरों की प्रारंभिक सेटिंग

................. ;विशेष प्रयोजन

.................

bsf STATUS, RP0; रजिस्टर करने के लिए बाइनरी नंबर 11010011 लिखें

movlw b"11010010" ;OPTION_REG, जिससे आंतरिक सेट हो जाता है

movwf OPTION_REG; TMR0 के लिए क्लॉक सोर्स

बीसीएफ स्थिति, RP0; TMR0 से पहले प्रीस्कूलर को सक्षम करें

प्रीस्कूलर अनुपात को 1:8 पर सेट करें

movlw .8 ;चलाने से पहले शीट रजिस्टर में नंबर 8 लिखें

movwf shet ; TMR0 अतिप्रवाह बाधित, चल रहा है

एक बार बिजली चालू होने के बाद

movlw b"10000000"; इसमें बाइनरी नंबर 10000000 लिखें

पहला कॉलम शामिल करने के लिए movwf स्टॉलब; रजिस्टर स्टॉलब

प्रत्येक स्तंभ की पंक्तियों के लिए तार्किक स्तरों वाली सूचना 8 सूचना भंडारण रजिस्टरों में संग्रहीत की जाती है, जिनके माध्यम से पहुँचा जाता है। पहले रजिस्टर के पते का नाम data1 है। शीट और स्टोलब रजिस्टरों के प्रारंभिक लेखन के अलावा, FSR_prer रजिस्टर में पहले सूचना भंडारण रजिस्टर का पता लिखना आवश्यक है (रजिस्टर डेटा 1 है, FSR_prer में प्रविष्टि एक बार की जाती है, फिर इसे इसमें समायोजित किया जाता है) हैंडलर), उसके बाद ही, TMR0 ओवरफ्लो को बाधित होने दें।

व्यवधान को सक्षम करने से पहले, सूचना भंडारण रजिस्टरों को साफ करना वांछनीय है, यह ऑपरेशन अतिरिक्त tmp रजिस्टर (एक काउंटर के रूप में) और अप्रत्यक्ष पते का उपयोग करके किया जाता है, समाशोधन मैट्रिक्स को बंद करने के बराबर है।

इंटरप्ट हैंडलिंग रूटीन में, हम स्टॉलब रजिस्टर की सामग्री को DD2 चिप में लोड करते हैं (इंटरप्ट को सक्षम करने के बाद पहली बार जब आप हैंडलर में प्रवेश करते हैं, तो रजिस्टर में 10000000 नंबर होता है, जैसा कि ऊपर बताया गया है)। लोडिंग स्टोलब रजिस्टर के निचले बिट से शुरू होती है, जो Q0 से Q7 (DD2 चिप के अंदर) की दिशा में शिफ्ट हो जाती है क्योंकि इसे लोड किया जाता है, लोडिंग एल्गोरिदम ऊपर चर्चा की गई थी, इसलिए मुझे लगता है कि कोड को समझना मुश्किल नहीं होगा . अगला, हम INDF रजिस्टर की सामग्री को DD2 में लोड करते हैं, यह सूचना भंडारण रजिस्टरों में से एक है, जिसका पता FSR में है (पहली बार जब आप इंटरप्ट को सक्षम करने के बाद हैंडलर में प्रवेश करते हैं, तो FSR में पहले का पता होता है सूचना भंडारण रजिस्टर जिसे डेटा 1 कहा जाता है)। लोडिंग INDF रजिस्टर के हाई बिट से शुरू होती है। विचार किए गए 2 बाइट्स को लोड करने के बाद, हम st_cp आउटपुट को क्लॉक करते हैं, जिससे डाउनलोड किया गया डेटा DD2, DD3 microcircuits की आउटपुट लाइनों में प्रेषित होता है। इस प्रकार, हैंडलर के पहले इनपुट पर, मैट्रिक्स का पहला कॉलम स्विच किया जाता है, जिसमें एल ई डी प्रकाश होता है, जिसके एनोड पर एक उच्च तर्क स्तर होता है, डेटा 1 रजिस्टर की सामग्री के अनुसार ( प्रथम सूचना भंडारण रजिस्टर)।

अगला, हम इंटरप्ट हैंडलर में अगली प्रविष्टि पर स्विच करने के लिए मैट्रिक्स के दूसरे कॉलम को तैयार करने के लिए स्टोलब रजिस्टर को एक बिट से दाईं ओर शिफ्ट करते हैं। STATUS रजिस्टर के C फ़्लैग को शिफ्ट से पहले साफ़ किया जाना चाहिए, क्योंकि शिफ्ट इस फ़्लैग के माध्यम से होता है और शिफ्ट के समय इसकी स्थिति ज्ञात नहीं होती है। शिफ्ट के बाद, हम दूसरे कॉलम के लिए तार्किक पंक्ति स्तरों के साथ अगला स्टोरेज रजिस्टर (डेटा 1 रजिस्टर के बाद) तैयार करते हुए एफएसआर रजिस्टर बढ़ाते हैं। अगला, हम शर्त के साथ शीट रजिस्टर को घटाते हैं, और यदि यह शून्य के बराबर नहीं है, तो TMR0 ओवरफ्लो इंटरप्ट फ्लैग को रीसेट करें, टाइमर को नंबर लिखें, और इंटरप्ट हैंडलर से बाहर निकलें।

अगली बार जब आप हैंडलर में प्रवेश करेंगे, तो मैट्रिक्स का दूसरा कॉलम सक्षम हो जाएगा, और इसी तरह। जब शीट रजिस्टर को रीसेट किया जाता है (8 वें कॉलम को स्विच करने के बाद), नंबर 8 को स्विचिंग कॉलम के अगले चक्र के लिए लिखा जाता है, इसके अलावा, स्टोलब रजिस्टर के मूल्य को सही किया जाता है, पहले सूचना भंडारण रजिस्टर का पता ( data1) FSR रजिस्टर में लिखा गया है।

आइए TMR0 टाइमर के लिए समय की देरी की गणना करें, घड़ी की आवृत्ति 4 मेगाहर्ट्ज है, मशीन चक्र 1 μs है। एल ई डी की झिलमिलाहट से बचने के लिए, आइए प्रत्येक कॉलम की ताज़ा दर को 100Hz (अवधि T = 10ms) के रूप में लें, समय की देरी 10/8 = 1.25ms है। हम प्रिस्कूलर अनुपात TMR0 को 1:8 पर सेट करते हैं, जबकि अधिकतम संभावित विलंब 256x8 = 2048 µs है। 1.25 एमएस के ठहराव के लिए, टाइमर को (256x1.25) / 2.048 = 156.25 बार गिनना चाहिए, राउंड अप करने पर हमें 156 काउंट मिलते हैं। तदनुसार, टाइमर में संख्या 256-156 = 100 लिखना आवश्यक है। लेकिन यह बिल्कुल सही मान नहीं है, क्योंकि इंटरप्ट रूटीन को निष्पादित करने में कुछ समय लगता है, इस मामले में इसमें लगभग 190 µ लगते हैं, पुनर्गणना में प्रीस्कूलर गुणांक को ध्यान में रखते हुए, हमें 190/8 = 23.75 या 24 काउंट मिलते हैं। TMR0 को लिखने का सही मान है: 100+24=124।

मुख्य कार्यक्रम में, हम 8 सूचना भंडारण रजिस्टर लिखते हैं, जिसके अनुसार हम मैट्रिक्स पर प्रदर्शित करना चाहते हैं। उपरोक्त कोड के लिए मैट्रिक्स को जानकारी के आउटपुट को समझाते हुए नीचे एक आरेख है।


शिफ्ट रजिस्टरों के अलावा, सात-खंड संकेतकों और एलईडी मैट्रिसेस पर जानकारी प्रदर्शित करने के लिए विशेष ड्राइवर हैं, इस मामले में ड्राइवर स्वयं गतिशील संकेत को लागू करता है, जो केवल प्रदर्शन के लिए डेटा भेजने के लिए रहता है। मैंने इन लोकप्रिय ड्राइवरों में से एक के बारे में एक लेख में समीक्षा की।

लिंक के नीचे आप PIC16F628A माइक्रोकंट्रोलर के लिए फर्मवेयर और स्रोत कोड डाउनलोड कर सकते हैं, दो 74HC595 शिफ्ट रजिस्टरों का उपयोग करके 8x8 मैट्रिक्स पर गतिशील संकेत के कार्यान्वयन के साथ, कनेक्शन आरेख ऊपर चर्चा की गई थी। अक्षर आर, एल, संख्या 46, एक स्माइली, और एक क्रॉस के रूप में सिर्फ एक पैटर्न को वैकल्पिक रूप से मैट्रिक्स पर प्रदर्शित किया जाता है, यह एनीमेशन नीचे वीडियो में दिखाया गया है।

टैग के साथ , । पढ़ना ।

8x8 मैट्रिक्स एलईडी डिस्प्ले विभिन्न आकारों में आते हैं और काम करने में मज़ेदार होते हैं। बड़ी औद्योगिक असेंबली लगभग 60 x 60 मिमी आकार की होती हैं। हालाँकि, यदि आप बहुत बड़ी एलईडी सरणियों की तलाश कर रहे हैं, तो वे मुश्किल से आती हैं।

इस परियोजना में, हम वास्तव में एक बड़े एलईडी मैट्रिक्स एलईडी डिस्प्ले का निर्माण करेंगे, जो एक दूसरे के साथ श्रृंखला में जुड़े कई बड़े 8x8 एलईडी मॉड्यूल से बना है। इनमें से प्रत्येक मॉड्यूल का आकार लगभग 144 x 144 मिमी है।

इस डिस्प्ले की ख़ासियत यह है कि ज़रूरत पड़ने पर आप इसके पीछे की पृष्ठभूमि को देख सकते हैं। यह इन डिस्प्ले के रचनात्मक उपयोग की अनुमति देता है, जैसे उन्हें ग्लास पैनल के सामने रखना ताकि आप देख सकें कि डिस्प्ले के पीछे क्या हो रहा है।

इस परियोजना के लिए हम 10 मिमी का उपयोग करेंगे। आप अन्य आकारों का भी उपयोग कर सकते हैं। आमतौर पर उपलब्ध आकार 3 मिमी, 5 मिमी, 8 मिमी और 10 मिमी हैं।

हालाँकि डिस्प्ले को किसी भी माइक्रोकंट्रोलर के साथ काम करने के लिए डिज़ाइन नहीं किया गया है, हम लोकप्रिय Arduino बोर्डों का उपयोग करेंगे और इसे केवल 3 सिग्नल तारों का उपयोग करके SPI के माध्यम से कनेक्ट करेंगे।

इस प्रोजेक्ट को बनाने के लिए, इलेक्ट्रॉनिक्स और कंपोनेंट सोल्डरिंग के बुनियादी ज्ञान के साथ-साथ Arduino का उपयोग करने का कुछ ज्ञान आवश्यक है। फर्मवेयर।

यहां आपको एल ई डी के लंबे पैरों का उपयोग करके एल ई डी को मिलाप करने की आवश्यकता है। आप किसी भी एलईडी आकार और रंग का उपयोग कर सकते हैं, लेकिन पैर की लंबाई (23 मिमी से अधिक) उन्हें एक साथ मोड़ने और मिलाने के लिए पर्याप्त होनी चाहिए। एल ई डी को 8x8 मैट्रिक्स के रूप में व्यवस्थित किया जाता है, जहां पंक्तियों के लिए कैथोड एक साथ मिलाए जाते हैं, और कॉलम के लिए एनोड्स।

MAX7219 ड्राइवर एलईडी मैट्रिक्स के गतिशील संकेत को नियंत्रित करता है। डिजाइन करते समय, प्रत्येक 8x8 एलईडी मैट्रिक्स निम्नलिखित घटकों का उपयोग कर एक सर्किट पर आधारित होगा:

  • 1 एक्स मैक्स 7219
  • 1 x 10uF 16V इलेक्ट्रोलाइटिक कैपेसिटर
  • 1 x 0.1UF सिरेमिक कैपेसिटर
  • 1 x 12 kΩ रोकनेवाला (0.25 W)
  • 1 x 24-पिन डीआईपी आईसी सॉकेट

ध्यान दें कि आपके द्वारा उपयोग किए जा रहे एलईडी के साथ काम करने के लिए आपको एक अलग प्रतिरोधक मान का चयन करने की आवश्यकता हो सकती है। यह अवरोधक MAX7219 पर अधिकतम करंट को सीमित करता है जो कि एल ई डी के लिए आउटपुट होगा।

और यह वीडियो स्पष्ट रूप से दिखाता है कि लोकप्रिय Arduino UNO / नैनो बोर्ड का उपयोग करके एलईडी मैट्रिक्स, इलेक्ट्रॉनिक नियंत्रण बोर्ड की स्थापना और इसे चलाने के लिए एक सरल परीक्षण कैसे किया जाता है।


इस कनवर्टर के महत्वपूर्ण लाभों में से एक यह है कि इसे व्यावहारिक रूप से ट्यूनिंग की आवश्यकता नहीं होती है, पूरी सेटिंग माइक्रोक्रिकिट की आवृत्ति-सेटिंग कैपेसिटर के चयन के लिए नीचे आती है, वे वांछित आवृत्ति पर ट्यून किए जाते हैं, क्षमता में वृद्धि के साथ यह संधारित्र, आवृत्ति घट जाती है, वृद्धि के साथ, यह बढ़ जाती है।



संबंधित आलेख: