विषयसूची:
वीडियो: रेनबो टैप करें - एक 2 प्लेयर क्विक रिएक्शन गेम: 4 स्टेप्स (चित्रों के साथ)
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:19
एलईडी स्ट्रिंग केवल 3 तारों का उपयोग करती है। इसलिए मुझे केवल 5V पावर (लाल), ग्राउंड (सफ़ेद) और सिग्नल (हरा) चाहिए था। यदि आप भी एस्प्रुइनो का उपयोग करते हैं तो उनकी वेबसाइट पर ट्यूटोरियल की जांच करना सुनिश्चित करें। आरजीबी एलईडी के लिए एक बहुत स्पष्ट रूप से समझाया गया है।
मैंने एलईडी स्ट्रिंग को 6 एलईडी के 3 भागों में काट दिया है और फिर उन्हें अतिरिक्त तारों के साथ जोड़ा है। इस तरह, सभी एल ई डी सभी एक ही सरणी का उपयोग कर रहे हैं जो मुझे बोर्ड पर 2 अतिरिक्त पोर्ट बचाता है और इसे प्रोग्राम करना आसान है।
बटन कनेक्ट करना थोड़ा और मुश्किल था। मैं बोर्ड पर कम संभव बंदरगाहों का उपयोग करना चाहता था इसलिए मैं I2C सेटअप का उपयोग करने के बारे में सोच रहा था, लेकिन इसमें बहुत असफल रहा। मैं इसे काम पर नहीं ला सका इसलिए मैंने कुछ और देखा।
आखिरकार मुझे एक कीपैड के लिए एस्प्रुइनो पर एक ट्यूटोरियल मिला जो कि 16 बटन के साथ कीपैड मैट्रिक्स के रूप में वायर्ड है। यह लागू करने में काफी आसान लग रहा था इसलिए मैं उस तरह से चला गया। मुझे केवल 12 बटन चाहिए थे इसलिए मुझे 3x4 मैट्रिक्स की आवश्यकता होगी।
कीपैड मैट्रिक्स में सभी बटन कॉलम और रो में वायर्ड होते हैं। इस तरह आपको 16 बटन के लिए केवल 8 पोर्ट चाहिए। मेरे सेटअप में मुझे केवल २ गुना ६ बटन की आवश्यकता थी ताकि बोर्ड पर कुल ७ पोर्ट हों (३ कॉलम वाली ४ पंक्तियाँ)। यह अभी भी बहुत कम है तो 12 बटन को अलग से जोड़ना और एस्प्रुइनो के कीपैड मॉड्यूल का उपयोग करना वास्तव में आसान है।
मुझे सर्किट बेसिक्स पर कीपैड के बारे में एक अच्छा ट्यूटोरियल मिला जिसने मुझे बटनों की वायरिंग में बहुत मदद की।
जब मैं अपने सभी बटन कनेक्ट करने में कामयाब रहा तो मैं बहुत निराश हो गया क्योंकि कनेक्टर लगातार फिसल रहे थे और देर हो रही थी। इसलिए मैंने बॉक्स पर सब कुछ एक साथ टेप कर दिया और तस्वीरें लेना पूरी तरह से भूल गया। उस दिन भी बहुत उपयोगकर्ता के अनुकूल नहीं है जिस दिन मुझे एक बॉक्स में एक तार को फिर से जोड़ने की आवश्यकता होती है।
चरण 3: कोड लिखना
एस्प्रुइनो को जावास्क्रिप्ट में प्रोग्राम किया गया है इसलिए मेरे लिए यह बहुत कम जटिल है तो Arduino के लिए कोड लिखना।
कोड कुछ अनुकूलन का उपयोग कर सकता है लेकिन यह अभी के लिए काम करता है। एक बग भी है (शायद यह एक विशेषता है: डी) जहां आप एक ही समय में 2 बटन नहीं दबा सकते हैं। लेकिन यह खेल को खेलने के लिए इसे थोड़ा और चुनौतीपूर्ण (निराशाजनक पढ़ें) बनाता है, इसलिए मैंने अभी तक इस मुद्दे की जांच नहीं की है, मुझे यह इस तरह से पसंद है (यदि आप इसे खो देते हैं तो यह अतिरिक्त निराशाजनक है)।
एल ई डी प्रोग्रामिंग थोड़े आसान है। स्ट्रिंग में प्रत्येक एलईडी एक सरणी में 3 मान है। इसलिए यदि आपके पास [२५५, ०, ०, २५५, ०, ०] जैसी कोई सरणी है, तो आपके पास पहले २ एल ई डी लाल हैं।
एक त्वरित अवलोकन में।
1. सबसे पहले मैं अपने रंगों को परिभाषित करता हूं और सभी रंगों की एक सरणी बनाता हूं
2. फिर मैं प्लेयर सेटिंग्स को परिभाषित करता हूं, जैसे बटन आईडी और प्रत्येक खिलाड़ी के पास एलईडी स्ट्रिंग में कौन सा इंडेक्स होता है
3. खेल की शुरुआत में मैं इंद्रधनुष सरणी में सभी रंगों को फेरबदल करता हूं और उस जानकारी को एक नए ऐरे में संग्रहीत करता हूं। फिर मैं सभी एल ई डी को रीसेट करता हूं और शीर्ष एल ई डी को शफल इंद्रधनुष रंगों के साथ हल्का करता हूं
4. अंत में हमारे पास कोड है जो प्रमुख घटनाओं को सुनता है। मैं सभी इनपुट को एक सरणी में संग्रहीत करता हूं और जांचता हूं कि यह सरणी सही क्रम में है या नहीं।
5. एक अच्छा अतिरिक्त मैंने कल जोड़ा कि विजेताओं को एक भयानक इंद्रधनुष एनीमेशन के साथ व्यवहार किया जाता है: डी
इसे और मज़ेदार बनाने के लिए मेरे मन में अभी भी बहुत सी चीज़ें हैं लेकिन यह बाद के लिए कुछ है;)
मैं पूर्ण स्रोत कोड अपलोड करने में सक्षम नहीं हूँ इसलिए मैंने इसे Gitlab पर डाल दिया है
gitlab.com/marzsman/tap_tap_rainbow
चरण 4: इसके साथ मज़े करो !!! ?
जब मैं और मेरी बेटी अपने विचार लिख रहे थे और सोच रहे थे कि यह कैसा दिखना चाहिए, तो मुझे तुरंत यह विचार पसंद आया। लेकिन मुझे कहना होगा, मैंने कभी नहीं सोचा था कि खेलने में इतना मज़ा आएगा। हमारे पास पहले से ही कुछ बड़े इंद्रधनुष टैपिंग युद्ध थे: डी
मुझे उम्मीद है कि किसी को भी इसमें उतना ही मजा आएगा जितना हमें है।
यह पहली पूर्ण परियोजना भी है जिसे मैंने इतने कम समय में बनाया है और मेरी 8 साल की बेटी के साथ कुछ किया है और यह मेरी पहली शिक्षाप्रद (अंततः!), तो हाँ एक तरह से यह मेरे लिए एक बहुत ही खास परियोजना है। तो मुझे उम्मीद है कि यह पसंद आएगा!
यदि आपके कोई प्रश्न या सुझाव हैं तो मुझे उन्हें सुनकर खुशी हुई!
सिफारिश की:
सिंगल-प्लेयर रिएक्शन टाइमर (Arduino के साथ): 5 कदम
सिंगल-प्लेयर रिएक्शन टाइमर (Arduino के साथ): इस प्रोजेक्ट में, आप एक Arduino द्वारा संचालित एक प्रतिक्रिया टाइमर का निर्माण करेंगे। यह एक Arduino के मिलिस () फ़ंक्शन पर काम करता है जहां प्रोसेसर उस समय को रिकॉर्ड करता है जब से प्रोग्राम चलना शुरू हुआ था। आप इसका उपयोग समय के अंतर को खोजने के लिए कर सकते हैं
मिडी के साथ क्विक फ्रूट पियानो: 6 स्टेप्स (चित्रों के साथ)
मिडी के साथ क्विक फ्रूट पियानो: यह वास्तव में सरल कैपेसिटिव-टच पियानो है। फल, सोडा के डिब्बे, पानी की बोतलें, एल्यूमीनियम पन्नी के स्ट्रिप्स आदि पर टैप करें, और आपको अपने कंप्यूटर से पॉलीफोनिक पियानो संगीत मिलता है। अब जब सॉफ्टवेयर लिखा गया है, तो परियोजना को अधिक समय नहीं लेना चाहिए
फ्यूजन 360 में क्विक-एंड-डर्टी पीसीबी रिप्रोडक्शन: 6 स्टेप्स (चित्रों के साथ)
फ़्यूज़न 360 में त्वरित और गंदा पीसीबी प्रजनन: यह एक त्वरित और गंदा तरीका है जो मौजूदा पीसीबी बोर्डों को तेजी से पुन: उत्पन्न कर सकता है यदि कोई 3 डी मॉडल पहले से उपलब्ध नहीं है। यह घटक फिट जांच करने के लिए ब्रेकआउट बोर्डों को त्वरित रूप से पुन: प्रस्तुत करने के लिए या अंतिम-मिनट के अच्छे रेंडर के लिए विशेष रूप से उपयोगी है। एक
ड्रैग रेस रिएक्शन टाइम: 5 स्टेप्स (चित्रों के साथ)
ड्रैग रेस रिएक्शन टाइम: इस निर्देश में, मैं आपको दिखाऊंगा कि ड्रैग रेस रिएक्शन टाइम ट्रेनर कैसे बनाया जाता है। सब कुछ पूरा होने के साथ, आप सभी रोशनी के माध्यम से साइकिल चलाने और प्रतिक्रिया समय प्राप्त करने के लिए एक बटन का उपयोग करने में सक्षम होंगे। शीर्ष दो पीली एलईडी टी का प्रतिनिधित्व करेंगे
एक एमपी३ प्लेयर को टेप प्लेयर से कनेक्ट करें: ६ कदम (चित्रों के साथ)
एमपी3 प्लेयर को टेप प्लेयर से कनेक्ट करें: संगीत सुनने के लिए एमपी3 प्लेयर या अन्य स्टीरियो स्रोत को टेप प्लेयर से कैसे कनेक्ट करें