विषयसूची:

HX1-DM - अपसाइक्लिंग Arduino DUE संचालित DIY ड्रम मशीन (मृत मशीन MK2 के साथ निर्मित): 4 चरण
HX1-DM - अपसाइक्लिंग Arduino DUE संचालित DIY ड्रम मशीन (मृत मशीन MK2 के साथ निर्मित): 4 चरण

वीडियो: HX1-DM - अपसाइक्लिंग Arduino DUE संचालित DIY ड्रम मशीन (मृत मशीन MK2 के साथ निर्मित): 4 चरण

वीडियो: HX1-DM - अपसाइक्लिंग Arduino DUE संचालित DIY ड्रम मशीन (मृत मशीन MK2 के साथ निर्मित): 4 चरण
वीडियो: ЧИСТКА ГЕТТО НА GALAXY DM | PROMO - hantarix | /gift hx1 2024, नवंबर
Anonim
Image
Image
मरम्मत।
मरम्मत।

युक्ति।

  • हाइब्रिड मिडी नियंत्रक / ड्रम मशीन: Arduino DUE संचालित!
  • बहुत कम विलंबता वाले 16 वेलोसिटी सेंसिंग पैड 1>ms
  • 8 नॉब्स उपयोगकर्ता किसी भी मिडी #CC कमांड को असाइन करने योग्य है
  • 16ch बिल्ट-इन सीक्वेंसर (कंप्यूटर की जरूरत नहीं !!)
  • MIDI इन/आउट/कार्यक्षमता के माध्यम से (USB मिडी इंटरफ़ेस के रूप में उपयोग किया जा सकता है!)
  • आंशिक मिडी घड़ी और एमटीसी समर्थन (एमएमसी और डीएडब्ल्यू नियंत्रण पर काम करना)

यह निश्चित रूप से सबसे जटिल परियोजनाओं में से एक है जिस पर मैंने काम किया है, 17 आउटपुट शिफ्ट रजिस्टर, 6 इनपुट शिफ्ट रजिस्टर, सर्किट बोर्ड पर काम कर रहे 2x 16 चैनल मल्टीप्लेक्सर्स की बात कर रहे थे मुझे नहीं पता कि क्या है और कहां प्लस मैंने कभी गड़बड़ नहीं की है पहले शिफ्ट रजिस्टरों/मल्टीप्लेक्सर्स के साथ……

यह ईबे को खरीदने के लिए एक आवेग के रूप में शुरू हुआ, मैं वास्तव में एक मूल उपकरण मास्चिन चाहता था क्योंकि मुझे एमपीसी स्टूडियो के स्वामित्व वाले लोगों की तुलना में हमेशा उन पर ड्रम पैड पसंद थे, इसलिए जब मैंने eBay पर £ 40 क्विड के लिए एक दोषपूर्ण देखा तो मैंने सोचा मैं इसे सबसे खराब स्थिति के साथ ठीक करने की कोशिश करूंगा 'अगर मैं इसे ठीक नहीं कर सकता तो मुझे एक Arduino DUE मिला है और कुछ UNO के आसपास पड़ा हुआ है, मैं हमेशा कुछ हैक कर सकता हूं'

मुझे वैसे भी वे ड्रम पैड बहुत पसंद हैं !!!!

आपूर्ति

1 x दोषपूर्ण नेटिव इंस्ट्रूमेंट्स Maschine MK2

1 एक्स अरुडिनो ड्यू।

17 x SN74HC595's - 8-बिट आउटपुट शिफ्ट रजिस्टर

6 x SN74HC165's - 8-बिट इनपुट शिफ्ट रजिस्टर

2 x 74HC4067 - 16 चैनल मल्टीप्लेक्सर्स।

2 x 3.2” 256x64 OLED डिस्प्ले।

कुछ फ्लैट तार (पुरानी फ्लॉपी केबल करेंगे)

चरण 1: मरम्मत।

ईबे विक्रेता इस बात का अंदाजा लगाने के लिए काफी दयालु था कि विवरण में क्या उम्मीद की जाए और उसने यूएसबी पोर्ट को हटा दिया। बोर्ड को अधिक वोल्टेज का सामना करना पड़ा था और बिजली नहीं थी। मल्टीमीटर को क्यू… बोर्ड में एक छोटा सा दिखाई दिया.. 'मैंने पहले शॉर्ट्स के साथ अनगिनत मदरबोर्ड की मरम्मत की है तो यह कितना कठिन हो सकता है!?!' यह ओवर वोल्टेज (और शायद बोर्ड डिजाइन के हिस्से में) निकला, लगभग हर किसी को निकाल लिया था मुख्य सीपीयू सहित बोर्ड पर घटक। यह बोर्ड वाकई खराब तरीके से था!

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

चरण 2: हैक।

हैक।
हैक।
हैक।
हैक।
हैक।
हैक।

यह जानते हुए कि मुझे मुख्य सीपीयू (जिसकी जरूरत नहीं होगी) को छोड़कर सब कुछ बदलने की जरूरत है, मैंने ईबे की ओर रुख किया। शुक्र है कि जरूरत की हर चीज सस्ती थी इसलिए उनमें से एक लोड ऑर्डर करना मजेदार था। ?

17 x SN74HC595's - 8-बिट आउटपुट शिफ्ट रजिस्टर।

17 आउटपुट शिफ्ट रजिस्टरों का उपयोग ड्रम पैड के बहु-रंगीन एल ई डी और सभी बटन एल ई डी (136 सटीक होने के लिए !!) को नियंत्रित करने के लिए किया जाता है।.. वे एक साथ जंजीर से बंधे हैं।

6 x SN74HC165's - 8-बिट इनपुट शिफ्ट रजिस्टर।

ये इनपुट शिफ्ट रजिस्टर 1 चैनल पर कई इनपुट के लिए बहुत अच्छे हैं। कुल 48 बटन हैं।

2 x 74HC4067 - 16 चैनल मल्टीप्लेक्सर्स।

हमारे पास 16 पैड हैं और 8 नॉब्स बचे हैं, ये एनालॉग भी हैं। मुझे इनका उपयोग करना आसान लगा क्योंकि बोर्ड पर 8 चैनल थे और मुझे यह पता लगाने में समस्या थी कि डेटा पिन कहां से कनेक्ट करें.. क्यू स्पेगेटी जंक्शन…।

2 x 3.2” 256x64 OLED डिस्प्ले।

इसमें कुछ स्क्रीन होनी चाहिए !!! मुझे मूल LCD स्क्रीन पर कोई जानकारी नहीं मिली जो NI Maschine में आई थी और मुझे अब और समय बर्बाद करने की जहमत नहीं उठानी पड़ी, इसलिए मैंने चीन से कुछ ऑर्डर करने का फैसला किया … मैंने इन्हें काम करने के लिए UG8x8 लाइब्रेरी का इस्तेमाल किया। नई स्क्रीन मूल से थोड़ी छोटी थीं इसलिए मैंने 'खराब बिट्स' को खाली कर दिया।

1 एक्स अरुडिनो ड्यू।

मेरे पास यह कुछ समय के लिए उस सारी शक्ति के लिए पर्याप्त योग्य परियोजना की प्रतीक्षा कर रहा था !! मुझे एक समस्या का सामना करना पड़ा, ऐसा लगता है कि इन बोर्डों के कुछ संशोधनों में एक रीसेट समस्या है, जिसका अर्थ है कि मुझे स्केच अपलोड करने के बाद चलाने के लिए कभी-कभी रीसेट बटन को हिट करना पड़ता था। यह आसानी से 10K रोकनेवाला के साथ तय किया गया था (इस बारे में Arduino फ़ोरम पर एक पोस्ट है)।

चरण 3: कोड।

मैं वास्तव में इस बात से प्रभावित था कि Arduino समुदाय में कितना समर्थन है, विभिन्न घटकों के लिए कोड उदाहरण और पुस्तकालय खोजना वास्तव में सरल और सीधे आगे था।

USB मिडी को चालू करना और चलाना आसान था और इसमें कुछ मिनट लगे। एल ई डी में कुछ समय लगा और मुझे एक ऐसा स्केच बनाना था जो प्रत्येक पिन को 1 सेकंड के अंतराल में उच्च रूप से सेट करे और एक नोट लिया।

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

मैं एक सीक्वेंसर और कंप्यूटर की आवश्यकता के बिना रिकॉर्ड करने की क्षमता चाहता था, मुझे बीपीएम को एमएस में बदलने के बारे में कुछ जानकारी मिली और एक महान Arduino DUE टाइमर लाइब्रेरी मिली।

टाइमर लाइब्रेरी का उपयोग करके मैं रीडिंग इनपुट और चीजों को अंतराल में सेट करने में सक्षम था:

पैड @ 1ms - मैंने इसे प्रतिक्रिया / डी-बाउंस कलाकृतियों के बीच सबसे अच्छा संतुलन देने के लिए पाया।

बटन @ 40ms - मैंने एक कतार पुस्तकालय का उपयोग किया ताकि कोई प्रेस छूट न जाए।

प्रसंस्करण मुख्य लूप में किया जाता है, जब आप एक रुकावट में होते हैं तो आप बहुत अधिक नहीं कर सकते क्योंकि यह Arduino को लॉक कर देगा।

मिडी स्टफ @ बीपीएम (एमएस में) - अनुक्रमण के लिए, वांछित बीपीएम पर एक फ़ंक्शन कहा जाता है जो अपडेट ईटीसी को नोट करता है और बीट काउंटर को बढ़ाता है।

चरण 4: निष्कर्ष।

निष्कर्ष।
निष्कर्ष।

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

टिप्स:

मैंने पाया कि Arduino/SAM फ़ोल्डर में हेडर फ़ाइलों में से किसी एक को संपादित करके DUE का USB नाम कैसे बदला जाए।

मिडी-ऑक्स मिडी कार्यक्षमता का परीक्षण करने के लिए एक महान उपकरण है

कड़ियाँ:

www.usb.org/sites/default/files/midi10.pdf - यूएसबी मिडी स्पेक -mi… BPM को ms. में बदलने के बारे में कुछ जानकारी

travis-ci.com/SMFSW/Queue - बटन इनपुट के लिए ताकि हम कोई प्रेस मिस न करें!

github.com/olikraus/u8g2/wiki/u8x8referenc… - एलईडी/एलसीडी स्क्रीन के लिए UG8 lib

github.com/ivanseidel/DueTimer/releases - Arduino DUE Timeing lib

www.pjrc.com/teensy/td_libs_Encoder.html - बड़े नॉब के लिए एनकोडर लिब

shiftregister.simsso.de/ - ShiftIn Register lib - हेनरिक हेन द्वारा निर्मित, 24 जुलाई, 2016

forum.arduino.cc/index.php?topic=57636.0 - मिडी टाइम कोड सामग्री

सिफारिश की: