PWM के साथ 500 एल ई डी को नियंत्रित करना


26

मैं एक ऐसी परियोजना पर विचार कर रहा हूं जिसमें व्यक्तिगत रूप से 500 एलईड को संबोधित करना शामिल होगा, प्रत्येक के लिए पीडब्लूएम समर्थन के साथ।

मैं एक Arduino का उपयोग करने की योजना बना रहा हूं क्योंकि मेरे पास पहले से ही एक है, लेकिन मैं सुझाव के लिए खुला हूं अगर किसी को लगता है कि एक अलग मंच एक बेहतर मैच होगा।

शिफ्ट रजिस्टरों को नियोजित करने की आवश्यकता होगी। इस स्थिति में उपयोग करने के लिए एक अच्छा बदलाव रजिस्टर क्या है? यदि PWM इस परियोजना को बहुत अधिक महंगा बनाता है, तो मैं इसके बिना करना ठीक हूँ। मैं $ 100 से कम खर्च करने की कोशिश करना चाहता हूं। मैं eBay से 500 एल ई डी खरीदना चाहता हूँ।

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

जवाबों:


14

मैं ShiftPWM लाइब्रेरी का लेखक हूं और मैंने योजनाबद्धता को सामान्य एलईडी के लिए और अधिक सामान्य जानकारी शामिल करने के लिए अद्यतन किया है, एलईडी स्ट्रिप्स और उच्च शक्ति एलईडी।

आपने संभवतः अपना प्रोजेक्ट पहले ही शुरू कर दिया था, लेकिन चूंकि इस पृष्ठ पर बहुत सारे आगंतुक आते हैं, इसलिए मैं अब भी एक विस्तृत जवाब देना चाहूंगा।

यदि आप शिफ्टपीडब्लूएम के साथ 500 एलईडी को नियंत्रित करना चाहते हैं, तो आप 60 हर्ट्ज पर प्रति एलईडी लगभग 64 चमक स्तर प्राप्त कर सकते हैं। आप 64 शिफ्ट रजिस्टर का उपयोग करेंगे। समर्पित हार्डवेयर PWM ड्राइवर आपको अधिक चमक स्तर देगा, लेकिन थोड़ा अधिक महंगा होगा। मुझे लगता है कि मेरी लाइब्रेरी का मुख्य लाभ उपयोग में आसानी है, क्योंकि इसमें आरजीबी और एचएसवी फ़ंक्शन और बहुत सारे उदाहरण शामिल हैं।

मैं व्यक्तिगत रूप से सामान्य शिफ्ट रजिस्टर के बजाय TLC5917 के TLC5916 के लिए जाऊंगा, क्योंकि उनके पास निरंतर वर्तमान एलईडी ड्राइवर है। यह आपको टांका लगाने से बचाएगा, क्योंकि आपको प्रतिरोधों की आवश्यकता नहीं है।

मेरी वेबसाइट ( http://www.elcojacobs.com/shiftpwm ) पर मुझे अधिक जानकारी है कि एलईडी को कैसे कनेक्ट किया जाए और उच्च गति पर Arduino के साथ लंबे सिग्नल तारों को चलाने के तरीके से कैसे निपटा जाए।

यदि आपके कोई और प्रश्न हैं, तो कृपया पूछें।


क्या आपने नीचे मेरे उत्तर को देखा है? यद्यपि मैं जिस तकनीक का वर्णन करता हूं वह अतिरिक्त हार्डवेयर का उपयोग करता है, वही दृष्टिकोण संभवतः आपके पुस्तकालय की गति में सुधार करने के लिए उपयोग किया जा सकता है। मैंने Arduino को क्रमादेशित नहीं किया है, इसलिए मैं इसके निर्देश समय से परिचित नहीं हूं, लेकिन सबसे सरल रूप में आप अपने CPU लोडिंग को कम कर सकते हैं, जो एसपीआई को बाहर निकालने के लिए आवश्यक होगा (यदि आप वर्तमान में 5 चक्रों पर हैं प्रति बिट और आपका SPI प्रति बाइट में 16 चक्र लेता है, जो 2.5x स्पीडअप होगा)। आप उस गति से दौड़ते हुए भी कुछ अधिक परिष्कृत चीजें करने में सक्षम हो सकते हैं।
सुपरकैट

उदाहरण के लिए, मान लें कि आप आठ चमक स्तरों को पूर्ण, 1/2, 1/4, 1/8, 1/16, 1/32, 1/64 और 1/128 का प्रतिनिधित्व करना चाहते हैं। यदि Arduino एक पॉइंटर और इंक्रीमेंट से प्राप्त मान पर "" और "या" या "ऑपरेशन कर सकता है, जो पॉइंटर से कम चार चक्रों में होता है, तो आप शायद अपनी चमक जानकारी को संग्रहीत करने के लिए प्रति पिक्सेल तीन बिट्स का उपयोग कर सकते हैं और फिर भी एक स्थानांतरण गति प्राप्त कर सकते हैं। प्रति 8 एलईडी के 16 चक्र।
सुपरकैट

PWM मूल्यों की गणना मेरी लाइब्रेरी में SPI आउटपुट को ओवरलैप करता है। मैं 4 मेगाहर्ट्ज पर एसपीआई चलाता हूं और गणना एसपीआई आउटपुट से थोड़ा अधिक समय लेती है। यह 43 घड़ी चक्र प्रति बाइट लेता है, इसलिए प्रति 8 आउटपुट। यह अधिकांश सेटअपों के लिए पर्याप्त तेज़ है। आप बिट कोड मॉड्यूलेशन का उपयोग करके अधिक गति प्राप्त कर सकते हैं, जहां आपके पास 8 अपडेट अवधि हैं, प्रत्येक अगली अवधि पिछली की आधी अवधि है। मैंने बीसीएम संस्करण लिखा है, लेकिन यह उस क्षण के लिए अधिक संवेदनशील है जब आप चमक सेटिंग को अपडेट करते हैं। यह गलत होने पर चंचल हो सकता है। मैं शायद मैट्रिक्स संस्करण में इसका इस्तेमाल करूंगा।
ElcoJacobs

बीसीएम आपके दृष्टिकोण का लाभ है कि आप 1 / 2,1 / 4 ... समय का उपयोग कर सकते हैं, लेकिन अभी भी प्रति एलईडी केवल एक पिन लेता है। यदि आपके पास कंप्यूटर विज्ञान पृष्ठभूमि है, तो आपको यह दिलचस्प लग सकता है कि SPI बाइट्स की गणना कैसे की जाती है। मैं मेमोरी (2 घड़ियों) से कर्तव्य चक्र प्राप्त करता हूं और एक तुलना (1 घड़ी) करता हूं। तुलना परिणाम को कैरी में संग्रहित किया जाता है, इसलिए मैं इसे बाइट में रोटेट ओवर कैरी (1 घड़ी) के साथ स्थानांतरित कर सकता हूं। इसे 8 बार करने से सभी तुलना परिणाम एक बाइट में डालते हैं जो एसपीआई को भेजने के लिए तैयार है।
ElcoJacobs

13

बस कॉपी :-)

http://www.evilmadscientist.com/article.php/peggy2

आज हम अपने "पैगी" ओपन-सोर्स एलईडी पेगबोर्ड प्रोजेक्ट के लिए एक अपडेट जारी कर रहे हैं। पैगी संस्करण 2 को जमीन से ऊपर तक फिर से डिजाइन किया गया है। और यह दिखता है ... लगभग बिल्कुल वैसा ही। हालांकि, हुड के तहत परिवर्तन पर्याप्त हैं, और हम सोचते हैं कि यह कई मायनों में एक बड़ा सुधार है।

सबसे पहले और सबसे महत्वपूर्ण, पेगी 2.0 अभी भी वही काम करता है: यह 25 x 25 सरणी के एलईडी स्थानों को कुशल शक्ति प्रदान करता है। पैगी को कुछ स्टिंग, जटिलता और एल ई डी के साथ खेलने से बाहर निकालने के लिए डिज़ाइन किया गया है। यह एक बहुमुखी और शक्तिशाली प्रकाश उत्सर्जक पेगबोर्ड है जो आपको कुशलतापूर्वक सैकड़ों एल ई डी ड्राइव करने की सुविधा देता है, जो आपको एक भी लोड रेज़र की गणना के बिना बहुत सारे कॉन्फ़िगरेशन में पसंद है। आप एक से 625 एल ई डी तक कहीं भी स्थापित कर सकते हैं, और पेगी उन्हें आपके लिए प्रकाश देगा।


पैगी 2.0 अब Arduino संगत भी है: यह लोकप्रिय Arduino सॉफ्टवेयर वातावरण का उपयोग करते हुए, USB-TTL केबल के माध्यम से प्रोग्रामिंग का समर्थन करता है।


अद्भुत लिंक! बुकमार्क। मैं इस तरह से एक परियोजना पर काम करने की योजना नहीं बना रहा था, लेकिन मुझे इसे अभी बनाना है मैंने उस छोटे से वीडियो को देखा :-)
रूटर सिमन्स

@ निकोलासुरदु टूटे नहीं। मैंने अभी इसे खोला।
एक्समेन

3
जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा

6

आप किस लेआउट में एलईडी चाहते हैं? आप बहुत सारे काम बचा सकते हैं यदि आप कुछ एलईडी मैट्रिक्स खरीदते हैं, तो आप एक या दो के लिए एकल-रंग 8x8 एलईडी मैट्रिक्स (64 एलईडी) प्राप्त कर सकते हैं ।

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

Allegro विशेष रूप से एल ई डी के सरणियों को नियंत्रित करने के लिए डिज़ाइन किए गए कुछ आसान निरंतर वर्तमान सिंक शिफ्ट रजिस्टर बनाता है , ताकि आपको अतिरिक्त प्रतिरोधों की आवश्यकता न हो, इससे चीजें सरल भी हो जाएंगी। यदि आप पर्याप्त शक्ति प्रदान नहीं कर सकते, तो आप सीधे AVR आउटपुट से एल ई डी ड्राइव करने में सक्षम नहीं हो सकते हैं, इसलिए आपको ट्रांजिस्टर का उपयोग करने की आवश्यकता होगी। आप उन्हें एक एकल आईसी में सरणियों में प्राप्त कर सकते हैं , जो कुछ काम भी बचाता है।


सभी बहुत अच्छे अंक!
जेसन एस

5

मुझे पीडब्लूएम की सीमा का कोई पता नहीं है, जिसकी आपको एलईडी की आवश्यकता है, लेकिन मैं एक 64 चैनल पीडब्लूएम नियंत्रक पर एक सर्वो नियंत्रण अनुप्रयोग के लिए काम कर रहा हूं जो मुझे 600us और 2.4ms के बीच की दाल दे सकता है। यह एक ATMega168 पर 8 I / O पिंस से 64 चैनल उत्पन्न करने के लिए CD74HCT238E's (3-8 लाइन डीमूलिप्लेक्सर्स) का उपयोग करता है और सरल सीरियल कमांड के माध्यम से चलाया जा सकता है। मुझे लगता है कि आप एक संशोधित संस्करण के कई संस्करणों को एक श्रृंखला लाइन पर एक साथ इस नियंत्रक को जोड़ सकते हैं और सभी 500 एल ई डी को संबोधित कर सकते हैं ... आप शायद नियंत्रक के एटीटीइन 2313 संस्करण का उपयोग कर सकते हैं क्योंकि आपकी फर्मवेयर आवश्यकताएं सरल होंगी।

मेरे ब्लॉग में विधानसभा स्रोत और योजनाबद्ध और डिज़ाइन प्रक्रिया का विवरण है।


5

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

उदाहरण के लिए, TLC5940 जैसा कुछ 16 चैनल PWM नियंत्रण प्रदान करता है। तो, मूल रूप से यह 12-बिट ग्रेस्केल PWM नियंत्रण के साथ एक निरंतर चालू 16-बिट शिफ्ट रजिस्टर है। मैं उस विशेष आईसी की सिफारिश कर सकता हूं क्योंकि मैंने इसके साथ एक 80x16 डिस्प्ले डिजाइन करने में मदद की थी।


4

Mondomatrix कुछ सीरियल (rs-485) पता करने योग्य एलईडी ड्राइवर बोर्ड बनाता है, और Arduino प्लेटफ़ॉर्म पर आधारित है: http://www.displayduino.com/ आप उस हार्डवेयर का उपयोग करते हुए आसानी से एक सिस्टम को एक साथ रख सकते हैं।


4

यदि आप प्रत्येक LED के लिए PWM नियंत्रण के बहुत सारे बिट्स नहीं चाहते हैं, और आप 500 LED के हर PWM चक्र के साथ प्रोसेसर के गड़बड़ी से बचना चाहते हैं, तो आप N 74HC595 या समकक्ष चिप्स का उपयोग करके चमक के N बिट्स के साथ 8 एल ई डी को नियंत्रित कर सकते हैं। । सभी एन चिप्स के आउटपुट को एक साथ तार दें, और कुछ सर्किटरी को सक्षम करता है जो केवल एक समय पर उपयुक्त समय के साथ सक्षम करता है। व्यवस्था करें इसलिए पहली चिप को आधा समय सक्षम किया जाएगा, दूसरे को शेष आधे के लिए सक्षम किया जाएगा, आदि।

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

जबकि प्रत्येक एलईडी के लिए कई 74HC595 आउटपुट का उपयोग करना कष्टप्रद हो सकता है, यह दृष्टिकोण संभवतः सबसे सरल है जो चल रहे सीपीयू हस्तक्षेप के बिना विभिन्न चमक स्तरों को बनाए रख सकता है।


3

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

मैंने इस समस्या का अनुभव किया है जब मुझे बड़े 7-सेगमेंट के एक सेट के लिए 200 1 मिमी लाल एल ई डी मिला, जो मैं निर्माण कर रहा था। समस्या को हल करने का मेरा सस्ता उपाय निम्नलिखित है:

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

1
मान्य बिंदु, लेकिन सवाल का जवाब नहीं देता।
मैट यंग

1
@MattYoung सहमत हैं। इस सवाल का बड़े पैमाने पर सभी अन्य उत्तरों द्वारा उत्तर दिया गया है। मैं केवल उन उत्तरों को पूरक करना चाहता था, जो एक पक्ष के मुद्दे को संबोधित करते हैं जो ओपी के डिजाइन को प्रभावित कर सकते हैं।
रिकार्डो

2

मैं इस आलेख में वर्णित बाइनरी एंगल मॉड्यूलेशन तकनीक का उपयोग करने का सुझाव देता हूं http://www.artisticlicence.com/WebSiteMaster/App%20Notes/appnote011.pdf

या ShiftPWM लाइब्रेरी की जाँच करें http://www.elcojacobs.com/shiftpwm/


1
जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा

1

XMOS अपने एलईडी टाइल किट के साथ Macroblock MBI5026 का उपयोग करता है। मुझे लगता है कि उनका उपयोग अधिकांश अन्य पेशेवर प्रणालियों में किया जाता है।

लियोन


1

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

यह अभी भी बहुत सारे हार्डवेयर लेगा।

पावर, प्रोग्रामिंग और बसों के लिए, प्रत्येक ड्राइवर के लिए डेटाशीट में संभवतः सबसे अधिक जानकारी होगी जिसकी आपको आवश्यकता होगी।


1

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

  movf bit0Comp, w; तुलना के बिट 0 (यदि स्पष्ट हो तो एफएफ) के आधार पर 00 या एफएफ होना चाहिए
  iorwf POSTINCF, w; डेटा के बिट 0; हमेशा IORWF का उपयोग करें
  andwf POSTINCF, w; डेटा का बिट 1; IORWF का उपयोग करें यदि तुलना का 1 बिट सेट है; ANDWF यदि स्पष्ट हो
  andwf POSTINCF, w; डेटा के बिट 2; IORWF का उपयोग करें यदि तुलना का 1 बिट सेट है; ANDWF यदि स्पष्ट हो
  andwf POSTINCF, w; डेटा के बिट 2; IORWF का उपयोग करें यदि तुलना का 1 बिट सेट है; ANDWF यदि स्पष्ट हो
  Movwf SPIREG; बाइट के परिणामस्वरूप स्टोर (बिट्स सेट अगर = = तुलना)

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


1

FPGAs या CPLDs ऐसे कार्यों के लिए अच्छे हो सकते हैं क्योंकि वे कई I / O पिन प्रदान करते हैं। सबसे सरल और सबसे सस्ते के लिए जाओ। यदि एक पर्याप्त नहीं है, तो एक जोड़े का उपयोग करें।


क्या आप हमें इस बारे में कुछ और जानकारी दे सकते हैं कि यह एक अच्छा विकल्प क्यों है, अभी मुझे इसके बारे में पता है, लेकिन मुझे पता है कि आपके द्वारा बताए गए विकल्प क्या हैं और सुझाए गए प्रौद्योगिकियां क्या हैं, मूल पोस्टर (ओपी) में ऐसा नहीं है पृष्ठभूमि।
कोर्तुक

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

1

आप लगभग निश्चित रूप से PSoC3 या PSoC5 का उपयोग करके आसानी से कर सकते हैं

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

504 एल ई डी एक आयत 21 x 24 में फिट हैं। यदि आपके पास 24 पीडब्लूएम चैनल, और 21 जीपीआईओ हैं, तो आपको यह काम मिल सकता है। अंदाज़ा लगाओ? PSoC की तुलना में अधिक है।

आप एक PSoC पर आसानी से 24 PWM चैनल सेट कर सकते हैं, और एक शिफ्ट रजिस्टर का हिस्सा बनने के लिए 21 अन्य पिन कॉन्फ़िगर कर सकते हैं। अगला, PWM आउटपुट में मेमोरी से बाइट्स पंप करने के लिए कुछ DMA चैनल कॉन्फ़िगर करें, और आप हंस रहे हैं। सभी सीपीयू को अब ग्राफिक्स बनाने की जरूरत है। PSoC3 में 8-बिट 8051 कोर है, जबकि PSoC5 में 32-बिट ARM है। अपना चयन ले लो। पंक्तियों के लिए उच्च ड्राइव करंट प्रदान करने के लिए आपको केवल बाहरी आईसी की आवश्यकता होगी कुछ ULN2803s। PWM आउटपुट में सिंगल एलईडी के लिए पर्याप्त करंट ड्राइव होना चाहिए।


यह एलईडी की ड्राइविंग के लिए कुल ओवरकिल है। समर्पित, सस्ते, पूर्व-डिज़ाइन किए गए एलईडी ड्राइवर बड़ी मात्रा में इस तरह से तैयार किए जाते हैं जो हर समय विशाल डिस्प्ले के लिए उपयोग किए जाते हैं। सभी को फिर से आविष्कार करने की आवश्यकता नहीं है और अधिक लागत के लिए।
nemik

@nemik - दरअसल, चिप्स की कुल लागत (महंगे फरनेल से) केवल £ 6.80 है।
राकेटमग्नेट

0

पैमाने की अर्थव्यवस्थाओं का उपयोग करें। Aliexpress जैसी चीनी साइटें WS2811- आधारित एलईडी किस्में ~ $ 15 प्रति 50 LED के लिए बेचती हैं। वे व्यक्तिगत रूप से संबोधित करने योग्य, उज्ज्वल, आमतौर पर जलरोधक होते हैं, और चमक के लिए पीडब्लूएम होते हैं। कोई टांका या शिफ्ट रजिस्टर करने के लिए या तो साथ गड़बड़ नहीं है। यह सब करते हुए मैं खुद से शर्त लगाता हूँ कि आप अधिक खर्च करेंगे, और अधिक समय लेंगे और बहुत निराशा होगी। इसके अलावा आप ओज में हैं इसलिए चीन से शिपिंग बहुत महंगा नहीं होगा।

ये विशाल एलईडी डिस्प्ले बनाने के लिए बनाए गए हैं ताकि वे बहुत सस्ते हो जाएं। बस हर 50 एल ई डी के बारे में या सबसे अच्छे प्रदर्शन के लिए फिर से इंजेक्शन लगाना सुनिश्चित करें।

उन्हें उपयोग करने में आसान बनाने के लिए अरुडिनो लाइब्रेरी भी हैं।


1
$ 15 प्रति 50 एल ई डी? तो 500 एल ई डी के लिए, यह $ 150 के लिए आता है? और तुम मुझे बताओ कि मेरे समाधान महंगा है तंत्रिका है? -1
रॉकेटमैग्नेट

इसके अलावा, आप इस के लिए एक लिंक प्रदान कर सकते हैं। WS801 अच्छी तरह से नहीं गूगल करता है, और न ही इसके बारे में एक खोज पर बारी है Aliexpress
Rocketmagnet

क्षमा करें, मेरा मतलब था WS2811, जैसे ये aliexpress.com/store/product/… या, PWM
डिमिंग के

PWM डिमिंग के साथ 50 एल ई डी ड्राइव करने के लिए एक सीरियल सिग्नल। धन्यवाद, यह वही है जो मैं कर रहा हूँ। लेकिन एक मानक बदलाव रजिस्टर पूर्ण फ्रेम प्रसारित होने के बाद आउटपुट पर बफर डेटा को कॉपी करने के लिए "कुंडी" पिन प्रदान करता है। यहाँ कोई कुंडी नहीं है इसलिए मुझे उच्च ताज़ा दरों पर ध्यान देने योग्य शोर की उम्मीद है। चिप्स पिक्सेल प्रति 15 बिट्स के साथ 400 केबीपीएस डेटा का समर्थन करते हैं, इसलिए फ्रेम को अपडेट करते समय स्क्रीन 1.9 मिलीसेकंड के लिए बकवास प्रदर्शित करेगी।
nialsh
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.