विषयसूची:

बिजनेस कार्ड/गेम कंसोल: ATtiny85 और OLED स्क्रीन: 5 कदम (चित्रों के साथ)
बिजनेस कार्ड/गेम कंसोल: ATtiny85 और OLED स्क्रीन: 5 कदम (चित्रों के साथ)

वीडियो: बिजनेस कार्ड/गेम कंसोल: ATtiny85 और OLED स्क्रीन: 5 कदम (चित्रों के साथ)

वीडियो: बिजनेस कार्ड/गेम कंसोल: ATtiny85 और OLED स्क्रीन: 5 कदम (चित्रों के साथ)
वीडियो: Bomber Man Game on Attiny85 Retro Game Console | attiny85 5-buttons joypad Video Games | DIY Game 2024, नवंबर
Anonim
Image
Image
गुत्सो
गुत्सो

हेलो सब लोग

आज मैं आपको दिखाने जा रहा हूं कि आप अपना खुद का बिजनेस कार्ड/गेम कंसोल कैसे बना सकते हैं/जो कुछ भी आप कल्पना कर सकते हैं जिसमें एक बैकलिट I2C OLED डिस्प्ले और एक ATtiny85 माइक्रोप्रोसेसर है। इस निर्देशयोग्य में मैं आपको बताऊंगा कि एक पीसीबी जिसे मैंने वास्तव में डिज़ाइन किया है वह वास्तव में कैसे कार्य करता है, आप इसे कैसे बना सकते हैं, और आप इस कार्यक्षमता के साथ क्या कर सकते हैं। यदि आपके पास पहले से ही एक I2C स्क्रीन है जो ATtiny85 से जुड़ी हुई है, तो यह निर्देश तब भी मददगार हो सकता है जब आप छवियों को प्रदर्शित करने की कोशिश कर रहे हों या मेनू, एक गेम और बहुत कुछ बनाना चाहते हों।

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

चरण 1: हिम्मत

गुत्सो
गुत्सो
गुत्सो
गुत्सो

यदि आपने पहले से नहीं किया है, तो मैं अत्यधिक अनुशंसा करता हूं कि आप circuit.io पर एक खाता बनाएं। यह आपको मेरी डिज़ाइन को आपकी आवश्यकताओं के अनुरूप अनुकूलित करने की अनुमति देगा।

इस चरण में मैं समझा रहा हूँ कि आप वास्तव में इन मुद्रित सर्किट बोर्डों (पीसीबी) में से किसी एक पर अपना हाथ कैसे प्राप्त कर सकते हैं। मैंने अपना PCB circuits.io में बनाया है, एक बेहतरीन ऑनलाइन टूल जिसका उपयोग आप सर्किट स्कीमैटिक्स और PCB बनाने के लिए कर सकते हैं। आप यहां डिजाइन देख सकते हैं:

यदि आप पीसीबी प्राप्त करने में रुचि रखते हैं, तो आप इस लिंक का उपयोग करके OSH पार्क से जितने चाहें उतने ऑर्डर कर सकते हैं:

बोर्ड (1-3 सप्ताह) प्राप्त करने में थोड़ा समय लगता है, लेकिन मुझ पर विश्वास करें। यह इसके लायक है! अपना बहु-कार्यात्मक कार्ड बनाने के लिए आपको निम्नलिखित भागों की आवश्यकता होगी:

  • SOIC-8 पैकेज में ATtiny85। यह हमारी परियोजना का दिमाग है जो सब कुछ नियंत्रित करता है।
  • I2C 128x64 पिक्सेल OLED स्क्रीन:
  • 2 22k ओम रेसिस्टर्स। ये बटन के लिए पुलअप रेसिस्टर्स हैं।
  • सरफेस-माउंट CR2032 होल्डर:
  • CR2032 सिक्का सेल बैटरी। यह छोटी बैटरी सर्किट को काफी समय तक पावर दे सकती है।
  • 3-पिन स्लाइड स्विच। यह बिजली स्विच है!
  • महिला शीर्षलेख। सर्किट में रहते हुए आप ATtiny85 को प्रोग्राम करने के लिए इनका उपयोग कर सकते हैं!
  • 6 मिमी बटन:
  • एक मुद्रित सर्किट बोर्ड (आप ऊपर दिए गए लिंक का उपयोग करके इसे ऑर्डर कर सकते हैं

उपकरण:

  • टांका लगाने वाला लोहा (एक महीन नोक के साथ)
  • मिलाप
  • सीसा कतरनी

ATtiny85 प्रोग्रामिंग के लिए:

  • 6 नर से नर जम्पर तार
  • एक 10 माइक्रो-फैराड कैपेसिटर
  • Arduino Uno या कुछ अन्य ATmega-आधारित माइक्रोकंट्रोलर

चरण 2: पीसीबी को असेंबल करना

पीसीबी को असेंबल करना
पीसीबी को असेंबल करना
पीसीबी को असेंबल करना
पीसीबी को असेंबल करना

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

कुछ उपयोगी टिप्स:

  • ATtiny पर छोटे बिंदु को उन्मुख करने की आवश्यकता है ताकि यह स्लाइड स्विच के करीब हो, अन्यथा आपके पास गलत क्रम में पिन होंगे।
  • बैटरी धारक का उन्मुखीकरण मायने रखता है। नक़्क़ाशीदार प्लस के साथ धारक का अंत नीचे पैड (एक रोकनेवाला की ओर इशारा किया) पर होना चाहिए।
  • स्विच, बटन, हेडर और रेसिस्टर्स का ओरिएंटेशन मायने नहीं रखता

यदि आपके कोई प्रश्न हैं, तो कृपया मुझे info[at]coniferapps.com. पर ईमेल करें

चरण 3: प्रोग्रामिंग प्राप्त करने का समय

मुझे निम्नलिखित निर्देश का उपयोग करके मेरा ATtiny / स्क्रीन कॉम्बो काम कर रहा है: https://www.instructables.com/id/ATTiny85-connects-to-I2C-OLED-display-Great-Things/। वास्तव में, मैं उस पुस्तकालय का भी उपयोग करता हूं जिसे AndyB2 ने अपने स्वयं के रेखाचित्रों में संशोधित किया है।

जिस तरह से हम ATtiny की प्रोग्रामिंग करने जा रहे हैं वह एक Arduino Uno के माध्यम से है। निम्नलिखित निर्देश आपको यह दिखाता है कि यह कैसे करना है: https://www.instructables.com/id/Program-an-ATtiny-with-Arduino/। यदि आपने पहले से ध्यान नहीं दिया है, तो सभी आवश्यक पिन पीसीबी पर पीछे की ओर लेबल किए गए पिन नंबरों के साथ मददगार रूप से टूटे हुए हैं।

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

चरण 4: कार्यक्रम के बारे में ही

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

प्रत्येक विवरण स्क्रीन की अपनी छवि भी होती है।

यदि आपने ध्यान नहीं दिया है, तो आश्चर्य विकल्प कुछ नहीं करता है। हम इसे अगले चरण में प्राप्त करेंगे:)।

चरण 5: अपनी रचना को अनुकूलित करना

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

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

बस एक और छोटी सी बात जिसका मैं उल्लेख करना भूल गया। जहां तक स्टोरेज की बात है, ATtiny85 में इसका ज्यादा हिस्सा नहीं है। कार्यक्रमों के लिए, यह लगभग 8kb है। 5 चित्रों और OLED डिस्प्ले लाइब्रेरी के साथ मेरा वर्तमान स्केच उन 8kb में से लगभग 7 पर है। आपके द्वारा बनाया गया कोई भी गेम इस अपेक्षाकृत छोटे अंतर के अंदर फिट होना होगा, इसलिए यह एक मजेदार चुनौती होगी:)।

मुझे सुनने के लिए धन्यवाद, और यदि आपके कोई प्रश्न हैं तो मुझे info[at]coniferapps.com पर ईमेल करने में संकोच न करें ([at] को @ से बदलें)। कृपया मुझे ऑटोडेस्क सर्किट प्रतियोगिता में वोट करें! उम्मीद है कि आपके पास दिखाने के लिए जल्द ही अपना खुद का व्यवसाय कार्ड/गेम होगा!

सिफारिश की: