विषयसूची:

प्रोग्राम करने योग्य एलईडी: 6 कदम (चित्रों के साथ)
प्रोग्राम करने योग्य एलईडी: 6 कदम (चित्रों के साथ)

वीडियो: प्रोग्राम करने योग्य एलईडी: 6 कदम (चित्रों के साथ)

वीडियो: प्रोग्राम करने योग्य एलईडी: 6 कदम (चित्रों के साथ)
वीडियो: Pixel led Home Decoration || S टाइप और Z टाइप की छुट्टी//Creative GS 2024, जुलाई
Anonim
प्रोग्राम करने योग्य एलईडी
प्रोग्राम करने योग्य एलईडी

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

चरण 1: यह कैसे काम करता है

एक एलईडी का उपयोग आउटपुट के रूप में किया जाता है। इनपुट के रूप में मैंने एक LDR, एक प्रकाश आश्रित अवरोधक का उपयोग किया। यह LDR अपने रेसिस्टर को बदल देता है क्योंकि यह कम या ज्यादा रोशनी प्राप्त करता है। रोकनेवाला तब माइक्रोप्रोसेसर एडीसी (एनालॉग डिजिटल कनवर्टर) के एनालॉग इनपुट के रूप में उपयोग किया जाता है।

नियंत्रक के संचालन के दो तरीके हैं, एक अनुक्रम रिकॉर्ड करने के लिए, दूसरा रिकॉर्ड किए गए अनुक्रम को वापस चलाने के लिए। एक बार जब नियंत्रक एक सेकंड के आधे के भीतर चमक के दो परिवर्तनों को नोटिस करता है, (अंधेरा, उज्ज्वल, अंधेरा या दूसरी तरफ), तो यह रिकॉर्डिंग मोड में स्विच हो जाता है। रिकोडिंग मोड में LDR के इनपुट को एक सेकंड में कई बार मापा जाता है और चिप पर स्टोर किया जाता है। यदि स्मृति समाप्त हो जाती है, तो नियंत्रक प्लेबैक मोड पर वापस चला जाता है और रिकॉर्ड किए गए अनुक्रम को चलाना शुरू कर देता है। चूंकि इस छोटे नियंत्रक की स्मृति बहुत सीमित है, 64 बाइट्स (हाँ, बाइट्स!), नियंत्रक 400 बिट्स रिकॉर्ड करने में सक्षम है। यह 10 सेकंड के लिए पर्याप्त जगह है जिसमें प्रति सेकंड 40 नमूने हैं।

चरण 2: सामग्री और उपकरण

सामग्री और उपकरण
सामग्री और उपकरण
सामग्री और उपकरण
सामग्री और उपकरण

सामग्री- 2 x 1K रोकनेवाला- 1 x LDR (लाइट डिपेंडेंट रेसिस्टर), उदा। M9960- 1 x लो-करंट LED, 1.7V, 2ma- 1 x Atmel ATtiny13v, 1KB फ्लैश रैम, 64 बाइट्स RAM, 64 बाइट्स EEPROM, [email protected] 1 x CR2032, 3V, 220mAhटूल्स- सोल्डरिंग आयरन - सोल्डर वायर- ब्रेडबोर्ड- एवीआर प्रोग्रामर- 5 वी बिजली की आपूर्ति- मल्टीमीटर सॉफ्टवेयर- एक्लिप्स- सीडीटी प्लगइन- विनएवीआर की कुल लागत बिना टूल्स के 5 डॉलर से कम होनी चाहिए। मैंने ATtiny13v का उपयोग किया क्योंकि इस नियंत्रक परिवार का यह संस्करण 1.8V पर चलने में सक्षम है। इससे सर्किट को बहुत छोटी बैटरी से चलाना संभव हो जाता है। इसे बहुत लंबे समय तक चलाने के लिए, मैंने एक कम करंट वाली एलईडी का उपयोग करने का फैसला किया, जो पहले से ही 2ma पर पूरी चमक तक पहुँच जाती है।

चरण 3: स्कीमैटिक्स

schematics
schematics

योजनाबद्ध पर कुछ टिप्पणियाँ। रीसेट इनपुट कनेक्ट नहीं है। यह सर्वोत्तम अभ्यास नहीं है। बेहतर होगा कि पुल अप के रूप में 10K रेसिस्टर का उपयोग किया जाए। लेकिन यह बिना मेरे लिए ठीक काम करता है और यह एक रोकनेवाला बचाता है। सर्किट को यथासंभव सरल रखने के लिए, मैंने आंतरिक थरथरानवाला का उपयोग किया। इसका मतलब है कि हम एक क्रिस्टल और दो छोटे कैपेसिटर बचाते हैं। आंतरिक थरथरानवाला नियंत्रक को 1.2 मेगाहर्ट्ज पर चलने देता है जो हमारे उद्देश्य के लिए पर्याप्त गति से अधिक है। यदि आप 5V से अधिक बिजली की आपूर्ति का उपयोग करने का निर्णय लेते हैं या किसी अन्य एलईडी का उपयोग करने के लिए आपको रोकनेवाला R1 की गणना करनी होगी। सूत्र है: आर = (बिजली की आपूर्ति वी - एलईडी वी) / 0.002 ए = 1650 ओम (बिजली की आपूर्ति = 5 वी, एलईडी वी = 1.7 वी)। एक के बजाय दो कम वर्तमान एल ई डी का उपयोग करना, सूत्र इस तरह दिखता है: आर = (बिजली की आपूर्ति वी - 2 * एलईडी वी) / 0.002 ए = 800 ओम। कृपया ध्यान दें, यदि आप किसी अन्य प्रकार की एलईडी चुनते हैं तो आपको गणना को समायोजित करना होगा। प्रतिरोधी आर 2 का मूल्य इस्तेमाल किए गए एलडीआर पर निर्भर करता है। 1KOhm मेरे लिए काम करता है। सर्वोत्तम मान ज्ञात करने के लिए आप एक पोटेंशियोमीटर का उपयोग करना चाह सकते हैं। सामान्य दिन के उजाले में प्रकाश परिवर्तन का पता लगाने में सक्षम होना चाहिए। बिजली बचाने के लिए, PB3 केवल उच्च पर सेट होता है, यदि कोई माप किया जाता है। अद्यतन: योजनाबद्ध भ्रामक था। नीचे एक सही संस्करण है। धन्यवाद, डेव_चैटिंग।

चरण 4: एक प्रोटोटाइप बोर्ड पर इकट्ठा करें

एक प्रोटोटाइप बोर्ड पर इकट्ठा करें
एक प्रोटोटाइप बोर्ड पर इकट्ठा करें
एक प्रोटोटाइप बोर्ड पर इकट्ठा करें
एक प्रोटोटाइप बोर्ड पर इकट्ठा करें

यदि आप अपने सर्किट का परीक्षण करना पसंद करते हैं, तो एक ब्रेडबोर्ड बहुत उपयोगी है। आप कुछ भी मिलाप किए बिना सभी भागों को इकट्ठा कर सकते हैं।

चरण 5: सर्किट प्रोग्राम करें

सर्किट प्रोग्राम करें
सर्किट प्रोग्राम करें
सर्किट प्रोग्राम करें
सर्किट प्रोग्राम करें

नियंत्रक को विभिन्न भाषाओं में प्रोग्राम किया जा सकता है। सबसे ज्यादा इस्तेमाल असेंबलर, बेसिक और सी हैं। मैंने सी का इस्तेमाल किया क्योंकि यह मेरी जरूरतों से सबसे अच्छा मेल खाता है। मैं दस साल पहले सी के लिए इस्तेमाल किया गया था और कुछ ज्ञान (ठीक है, केवल कुछ …) को पुनर्जीवित करने में सक्षम था। अपना कार्यक्रम लिखने के लिए, मैं सीडीटी प्लगइन के साथ ग्रहण की सलाह देता हूं। यहां ग्रहण प्राप्त करें https://www.eclipse.org/ और यहां प्लगइन https://www.eclipse.org/cdt/। एवीआर माइक्रोकंट्रोलर को सी भाषा संकलित करने के लिए आपको एक क्रॉस कंपाइलर की आवश्यकता होगी। हम भाग्यशाली हैं कि प्रसिद्ध जीसीसी का एक बंदरगाह मौजूद है। इसे WinAVR कहा जाता है और इसे यहां https://winavr.sourceforge.net/ पर देखा जा सकता है। WinAVR के साथ AVR नियंत्रकों को प्रोग्राम करने का एक बहुत अच्छा ट्यूटोरियल यहां है https://www.mikrocontroller.net/articles/AVR-GCC- ट्यूटोरियल। क्षमा करें, यह जर्मन में है, लेकिन यदि आप उन्हें खोजते हैं, तो आपको उस विषय पर हजारों ट्यूटोरियल पृष्ठ मिल सकते हैं। अपने स्रोत को संकलित करने के बाद, आपको हेक्स फ़ाइल को नियंत्रक को स्थानांतरित करना होगा। यह आपके पीसी को आईएसपी (सिस्टम प्रोग्रामर में) का उपयोग करके या समर्पित प्रोग्रामर का उपयोग करके सर्किट से कनेक्ट करके किया जा सकता है। मैंने एक समर्पित प्रोग्रामर का उपयोग किया क्योंकि यह कुछ तारों और एक प्लग को बचाकर सर्किट को थोड़ा आसान बनाता है। दोष यह है कि हर बार जब आप अपने सॉफ़्टवेयर को अपडेट करना चाहते हैं, तो आपको सर्किट और प्रोग्रामर के बीच नियंत्रक को स्वैप करना होगा। मेरा प्रोग्रामर https://www.myavr.de/ से आता है और मेरी नोटबुक से कनेक्ट करने के लिए USB का उपयोग करता है। आसपास कई अन्य हैं और आप इसे स्वयं भी बना सकते हैं। स्थानांतरण के लिए मैंने avrdude नामक एक प्रोग्राम का उपयोग किया जो कि WinAVR वितरण का हिस्सा है। एक उदाहरण कमांड लाइन इस तरह दिख सकती है:

avrdude -F -p t13 -c avr910 -P com4 -U फ़्लैश:w:flickled.hex:iसंलग्न आप स्रोत और संकलित हेक्स फ़ाइल प्राप्त कर सकते हैं।

चरण 6: सोल्डरिंग

टांकने की क्रिया
टांकने की क्रिया

यदि आपका सर्किट ब्रेडबोर्ड पर काम करता है तो आप इसे मिलाप कर सकते हैं।

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

सिफारिश की: