विषयसूची:

Arduino के साथ रेट्रो साउंड चिप - SAA1099: 16 कदम (चित्रों के साथ)
Arduino के साथ रेट्रो साउंड चिप - SAA1099: 16 कदम (चित्रों के साथ)

वीडियो: Arduino के साथ रेट्रो साउंड चिप - SAA1099: 16 कदम (चित्रों के साथ)

वीडियो: Arduino के साथ रेट्रो साउंड चिप - SAA1099: 16 कदम (चित्रों के साथ)
वीडियो: Thorium: An energy solution - THORIUM REMIX 2011 2024, नवंबर
Anonim
Image
Image
तारों - SAA1099
तारों - SAA1099

इस निर्देशयोग्य में, मैं आपको दिखा रहा हूँ कि एक पुराने ध्वनि संश्लेषण चिप के साथ एक Arduino Uno का उपयोग कैसे किया जाता है, वर्गाकार लहराती अच्छाई में मिडी फ़ाइलों को चलाने के लिए!

यदि आप इस परियोजना के कार्यों का एक त्वरित अवलोकन चाहते हैं, तो उपरोक्त वीडियो देखें। अन्यथा, जारी रखें!

चरण 1: वीडियो

Image
Image

यदि आप अपने सभी निर्देशों को स्पष्ट, संक्षिप्त वीडियो में पसंद करते हैं, तो हमने आपको कवर कर लिया है!

हम में से बाकी लोगों के लिए, आप कुछ और विवरण और लिखित निर्देशों के लिए जारी रख सकते हैं।

चरण 2: भागों और सामग्री

इसके लिए आपको इन चीजों की जरूरत पड़ेगी:

(लिंक ईबे आइटम के लिए हैं)

  • एक Arduino (ऊनो, नैनो, लियोनार्डो, वे सभी काम करना चाहिए)
  • कम से कम एक मध्यम आकार का ब्रेडबोर्ड
  • SAA1099 स्टीरियो साउंड जेनरेटर चिप
  • ब्रेडबोर्ड जम्पर तार (वैकल्पिक रूप से, मुझे डुपॉन्ट महिला से महिला जंपर्स का उपयोग करना पसंद है, जिसमें 20 मिमी हेडर पिन या तो अंत में डाले जाते हैं- अधिक मजबूत)
  • 8 मेगाहर्ट्ज टीटीएल ऑसीलेटर (ज़्वेइगेल्ट द्वारा प्रदान किया गया अलीएक्सप्रेस लिंक)
  • स्टीरियो (या मोनो) ऑडियो जैक
  • 2 x 1K रेसिस्टर्स (100 का लॉट)
  • 1 x 10K रोकनेवाला (50 का लॉट)
  • 2 x 100pF कैपेसिटर
  • (वैकल्पिक) कुछ एलईडी, कम से कम 1 (कोई भी रंग, यहां एक डॉलर के लिए 100 मिश्रित रंग हैं!)

प्रदान किए गए लिंक का उपयोग करते हुए, शिपिंग सहित कुल लागत $23.25 है। बेशक, इसमें से अधिकांश दुनिया भर में आधे रास्ते से आता है, इसलिए शिपिंग में आमतौर पर लगभग एक महीने का समय लगता है। यदि आप तेजी से शिपिंग चाहते हैं, तो आपको शायद थोड़ा अधिक भुगतान करना होगा।

चरण 3: वायरिंग - SAA1099

तारों - SAA1099
तारों - SAA1099
तारों - SAA1099
तारों - SAA1099

यदि स्कीमैटिक्स आपकी चीज हैं, तो आप यहां जाएं! हममें से बाकी लोग या तो कदम दर कदम आगे बढ़ सकते हैं, या वीडियो देख सकते हैं।

  • SAA1099 को ब्रेडबोर्ड के अंत में रखें, जिसमें चिप पर पायदान अंत की ओर हो।
  • अब, शक्ति। SAA1099 पर VDD (पिन 18) सत्ता में जाता है, फिर VSS (पिन 9) को जमीन पर पिन करता है।
  • इसके बाद, सीएस (पिन 2) और जमीन के बीच एक तार लगाएं, ताकि इसे नीचे की ओर खींचा जा सके

मैं डेटाशीट पर एक नज़र डालने की भी सिफारिश करूंगा, जिसे मैंने संलग्न किया है।

चरण 4: वायरिंग - टीटीएल ऑसीलेटर

तारों - टीटीएल थरथरानवाला
तारों - टीटीएल थरथरानवाला
तारों - टीटीएल थरथरानवाला
तारों - टीटीएल थरथरानवाला
  • हम TTL ऑसिलेटर को ब्रेडबोर्ड के बगल में ब्रेडबोर्ड पर रखेंगे, ताकि क्लॉक आउटपुट पिन SAA1099 (पिन 8) पर क्लॉक इनपुट के सबसे करीब हो।
  • आप आगे बढ़ सकते हैं और बिजली और जमीन को टीटीएल थरथरानवाला से जोड़ सकते हैं। (मैंने अपने वीडियो में बाद तक इंतजार किया, इसलिए मेरे पास कोई तस्वीर नहीं है)। ऊपर दी गई तस्वीर से पता चलता है कि कौन से पिन कौन से हैं।

चरण 5: वायरिंग - Iref और चिप इंटरफ़ेस

वायरिंग - आईरेफ़ और चिप इंटरफ़ेस
वायरिंग - आईरेफ़ और चिप इंटरफ़ेस
वायरिंग - आईरेफ़ और चिप इंटरफ़ेस
वायरिंग - आईरेफ़ और चिप इंटरफ़ेस
  • Iref (पिन 6) और 5V के बीच 10K रोकनेवाला कनेक्ट करें।
  • SAA1099 पर डिजिटल पिन 8 को WR (पिन 1) से कनेक्ट करें।
  • SAA1099 पर डिजिटल पिन 9 को A0 (पिन 3) से कनेक्ट करें।

चरण 6: वायरिंग - ध्वनि घटक

वायरिंग - ध्वनि घटक
वायरिंग - ध्वनि घटक
वायरिंग - ध्वनि घटक
वायरिंग - ध्वनि घटक
वायरिंग - ध्वनि घटक
वायरिंग - ध्वनि घटक
  • OUTR (पिन 4) और GND. के बीच एक 100pF संधारित्र कनेक्ट करें
  • OUTR (पिन 4) और 5V. के बीच एक 1K रोकनेवाला कनेक्ट करें
  • हम OUTL के लिए भी यही काम करेंगे (पिन 5)
  • OUTL (पिन 5) और GND. के बीच एक 100pF संधारित्र कनेक्ट करें
  • OUTL (पिन 5) और 5V. के बीच एक 1K रोकनेवाला कनेक्ट करें

ध्यान दें! सुनिश्चित करें कि प्रतिरोधों/संधारित्रों में से कोई भी तार स्पर्श नहीं कर रहा है, अन्यथा सामान काम नहीं करेगा, और संभावित रूप से आपके चेहरे पर उड़ सकता है।

चरण 7: वायरिंग - ऑडियो जैक

वायरिंग - ऑडियो जैक
वायरिंग - ऑडियो जैक
वायरिंग - ऑडियो जैक
वायरिंग - ऑडियो जैक
वायरिंग - ऑडियो जैक
वायरिंग - ऑडियो जैक
  • ब्रेडबोर्ड पर 5V और एक खाली पंक्ति के बीच एक छोटा जम्पर तार कनेक्ट करें।
  • अपना ऑडियो जैक रखें, ताकि 5V से जम्पर ऑडियो जैक पर "स्लीव" पिन से जुड़ जाए
  • SAA1099 पर क्रमशः L और R (या ऑडियो पिन, यदि आपके पास मोनो जैक है) को OUTL (पिन 5) और OUTR (पिन 4) पिन से कनेक्ट करें।

ध्यान दें! मोनो ऑडियो जैक पर, यह वास्तव में कोई फर्क नहीं पड़ता कि क्या जाता है, जब तक कि एक पिन 5V से जुड़ता है, और एक OUTL या OUTR से। यह ठीक ही लगेगा। जब तक ऐसा नहीं होता है, उस स्थिति में आप अपनी वायरिंग को दोबारा जांचना चाहेंगे।

चरण 8: वायरिंग - पावर टू ब्रेडबोर्ड

वायरिंग - पावर टू ब्रेडबोर्ड
वायरिंग - पावर टू ब्रेडबोर्ड
वायरिंग - पावर टू ब्रेडबोर्ड
वायरिंग - पावर टू ब्रेडबोर्ड
  • जम्पर तारों का उपयोग करके ब्रेडबोर्ड पावर बस के दोनों किनारों को एक दूसरे से कनेक्ट करें।
  • Arduino पर एक तरफ 5V और GND पिन से कनेक्ट करें, यह सुनिश्चित करते हुए कि आपने तारों को कहीं भी नहीं मिलाया है। यदि आपने किया, तो जादू का धुआं निकल सकता है।

चरण 9: वायरिंग - डेटा लाइन्स

वायरिंग - डेटा लाइन्स
वायरिंग - डेटा लाइन्स

क्रम में SAA1099 पर D0 से D7 को Arduino पर D0 (पिन 10) से D7 (पिन 17) से कनेक्ट करें।

मुझे लगता है कि ड्यूपॉन्ट महिला-महिला जम्पर तार, दोनों छोर में 15-20 मिमी हेडर पिन के साथ, पुरुष-पुरुष ड्यूपॉन्ट तारों की तुलना में बहुत बेहतर काम करते हैं। साथ ही आप उन्हें महिला-महिला, या पुरुष-महिला के रूप में भी उपयोग कर सकते हैं। दोनों ईबे पर बड़ी मात्रा में आसानी से मिल जाते हैं, थोड़ी मात्रा में बदलाव के लिए। आकांक्षी Arduino के दीवाने के लिए एक अच्छा क्रिसमस उपहार!

चरण 10: वैकल्पिक एलईडी

वैकल्पिक एलईडी
वैकल्पिक एलईडी
वैकल्पिक एलईडी
वैकल्पिक एलईडी

मैं यहां कदम दर कदम आगे नहीं बढ़ूंगा कि यहां सब कुछ कैसे बनाया जाए, लेकिन एलईडी जोड़ने के लिए कई अच्छी जगहें हैं। सबसे पहले, मैंने WR (पिन 1) और GND के बीच एक 3 मिमी लाल एलईडी कनेक्ट की, हर बार यह दिखाने के लिए कि Arduino SAA1099 को एक कमांड भेजता है।

मैंने पहले भी एल ई डी को डेटा लाइनों से जोड़ा है, जो आपको प्रत्येक पंक्ति पर वास्तविक बाइनरी डेटा देखने की अनुमति देता है। मैंने अपने "Arduino और SAA1099 - Fireflies" वीडियो में इस सेटअप का उपयोग किया, साथ ही साथ 6 और एलईडी और कुछ अतिरिक्त कोड प्रत्येक चैनल के लिए प्रत्येक एलईडी को सक्रिय करने के लिए प्रकाश डाला।

जितने अधिक एल ई डी, उतने ही अच्छे लगते हैं!

चरण 11: कोड

कोड!
कोड!
कोड!
कोड!

अब जब आपने सर्किट बना लिया है, तो डबल चेक कनेक्शन पर जाएं! आप अपने महंगे आर्डिनो और साउंडचिप को उड़ा नहीं देना चाहते हैं! (यदि आप करते हैं, ठीक है। यह मेरा व्यवसाय नहीं है)

यह मानते हुए कि आप समझदार हैं और आपने सब कुछ चेक कर लिया है, हम इसकी प्रोग्रामिंग शुरू कर सकते हैं।

  • पुस्तकालय https://github.com/Bobcatmodder/SAATunes पर है
  • आप SAATunes.zip फ़ाइल चाहते हैं, इसलिए आगे बढ़ें और उसे डाउनलोड करें।
  • अब, Arduino IDE खोलें।
  • "स्केच" के अंतर्गत, "लाइब्रेरी शामिल करें" पर क्लिक करें ".zip लाइब्रेरी जोड़ें"
  • जहां भी आपने SAATunes लाइब्रेरी डाउनलोड की है, वहां नेविगेट करें। (मुझे परवाह नहीं है अगर यह आपका डेस्कटॉप, डाउनलोड, या (शर्मनाक कुछ डालें) फ़ोल्डर था- बस इसे ढूंढें)
  • इसे चुनें, और "ओपन" पर क्लिक करें
  • यह आपको बताना चाहिए कि इसे आपके पुस्तकालयों में जोड़ा गया है।

चरण 12: इसका परीक्षण करें

झसे आज़माओ!
झसे आज़माओ!
झसे आज़माओ!
झसे आज़माओ!
  • उदाहरण SAATunes प्रोग्राम खोलें, "फ़ाइल", "उदाहरण", "SAATunes", "SAATunes-Uno" के अंतर्गत।
  • अपने Arduino को कंप्यूटर में, और किसी प्रकार के स्पीकर में प्लग करें।
  • प्रोग्राम को Arduino पर अपलोड करें।

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

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

चरण 13: अपनी खुद की मिडी फाइलों का उपयोग करना - रूपांतरण कार्यक्रम

अपनी खुद की MIDI फ़ाइलों का उपयोग करना - रूपांतरण कार्यक्रम
अपनी खुद की MIDI फ़ाइलों का उपयोग करना - रूपांतरण कार्यक्रम

बीथोवेन के अलावा कुछ और करने के लिए तैयार हैं? बहुत अच्छा, यहाँ तुम जाओ।

MIDI फ़ाइलों को C++ Bytestreams में बदलने के लिए, हमें लेन शुस्टेक के एक प्रोग्राम की आवश्यकता होगी। वह पुस्तकालय का निर्माता है जिसे मैंने अपना कोड बंद कर दिया है, और मेरी लाइब्रेरी उसी बाइटस्ट्रीम प्रारूप का उपयोग करती है जो वह करता है।

  • आप कार्यक्रम को https://github.com/LenShustek/miditones. पर देख सकते हैं
  • आप जो प्रोग्राम चाहते हैं वह "miditones.exe" है। आगे बढ़ो और इसे डाउनलोड करो।

चरण 14: मिडी फाइलों को परिवर्तित करना

MIDI फ़ाइलें कनवर्ट करना
MIDI फ़ाइलें कनवर्ट करना
MIDI फ़ाइलें कनवर्ट करना
MIDI फ़ाइलें कनवर्ट करना
MIDI फ़ाइलें कनवर्ट करना
MIDI फ़ाइलें कनवर्ट करना

चेतावनी! यहाँ आस्की ड्रेगन हो! आपको वीडियो देखने में आसानी हो सकती है, जहां आप ठीक वही देख सकते हैं जिसके बारे में मैं बात कर रहा हूं। यदि आप प्रवेश करने की हिम्मत करते हैं, तो जारी रखें!

MIDI से Bytestream कनवर्ज़न प्रोग्राम का उपयोग करने के लिए, आपको एक कमांड प्रॉम्प्ट विंडो खोलनी होगी। क्षमा करें मैक और लिनक्स उपयोगकर्ता, आपको एक समाधान खोजना पड़ सकता है।

  • स्टार्ट मेन्यू खोलें, और "सीएमडी" टाइप करें, फिर एंटर दबाएं।
  • अब हम थोड़ा MS-DOS जादू सीखेंगे। "CD" कमांड का उपयोग करके, जहाँ भी आपने "miditones.exe" फ़ाइल डाउनलोड की है, वहाँ नेविगेट करें। ज्यादातर मामलों के लिए, कमांड "सीडी डाउनलोड" होंगे।
  • "मिडिटोन" टाइप करके "miditones.exe" प्रोग्राम चलाएँ। यह आपको सबसे सामान्य कमांड दिखाने वाली एक सहायता सूची दिखानी चाहिए।

अब, हमें कनवर्ट करने के लिए एक MIDI फ़ाइल की आवश्यकता है। इंटरवेब पर कहीं एक खोजें, अधिमानतः बिना टक्कर या किसी विशेष प्रभाव के अलावा insturments/वेग के। (यदि आप नहीं जानते कि वे क्या हैं, तो चिंता न करें, आप ठीक हो जाएंगे)

  • अपनी MIDI फ़ाइल को उसी स्थान पर डाउनलोड करें जहाँ आपके पास "मिडिटोन" प्रोग्राम है।
  • अब, कमांड प्रॉम्प्ट विंडो का उपयोग करते हुए, "miditones -d -v [filename]" टाइप करें ([filename] को अपनी MIDI फ़ाइल के नाम से बदलें)।
  • मिडिटोन उसी फ़ोल्डर में सी ++ बाइटस्ट्रीम के साथ एक. C फ़ाइल उत्पन्न करेगा, जिसका नाम MIDI फ़ाइल के समान होगा।

चरण 15: अपनी परिवर्तित MIDI फ़ाइल का उपयोग करना

अपनी परिवर्तित MIDI फ़ाइल का उपयोग करना
अपनी परिवर्तित MIDI फ़ाइल का उपयोग करना
अपनी परिवर्तित MIDI फ़ाइल का उपयोग करना
अपनी परिवर्तित MIDI फ़ाइल का उपयोग करना
आपकी परिवर्तित MIDI फ़ाइल का उपयोग करना
आपकी परिवर्तित MIDI फ़ाइल का उपयोग करना

अब जब आपने अपनी MIDI फ़ाइल को रूपांतरित कर लिया है, तो चलिए इसे arduino को छोटे बाइट्स में फीड करते हैं!

  • यह मानते हुए कि आपके पास पहले से ही SAATunes-Uno उदाहरण खुला है, चलिए आगे बढ़ते हैं और कुछ और "सेव" करते हैं, ताकि हम इसे संपादित कर सकें।
  • एक बार जब आप इसे सहेज लेते हैं, तो ऊपरी दाएं कोने में छोटे "नीचे तीर" आइकन पर क्लिक करें।
  • "नया टैब" पर क्लिक करें, और इसे "[नाम]। एच" नाम दें ([नाम] को अपने मिडी गीत के नाम से बदलें, या जो भी आप चाहते हैं)
  • अब, उस. C फ़ाइल को खोलें जिसे पहले बनाया गया था। इसे खोलने के लिए आप नोटपैड का इस्तेमाल कर सकते हैं।
  • सब कुछ चुनने के लिए CNTRL/A का उपयोग करें, और फिर इसे कॉपी करें।
  • इसे arduino संपादक में अपने नए "[name].h" टैब में पेस्ट करें।

यहाँ सब कुछ ठीक है, तो चलिए कार्यक्रम पर वापस आते हैं।

  • पता लगाएं कि यह कहां कहता है "#include "RagePenny.h"", और इसे नीचे एक नई लाइन पर कॉपी/पेस्ट करें।
  • "RagePenny.h" को जो भी आपने अपनी नई फ़ाइल का नाम दिया है, उसे बदलें।
  • अब, इसके सामने दो फॉरवर्ड स्लैश (//) जोड़कर "#include "RagePenny.h" कमेंट करें।
  • कार्यक्रम अपलोड करें!

यदि सब कुछ ठीक रहा, तो इसे आपकी अपनी MIDI फ़ाइल चलानी चाहिए। यदि नहीं, तो सुनिश्चित करें कि नए टैब के नाम और "#include "RagePenny.h"" में आपके द्वारा बदले गए नाम समान हैं। अन्य चरणों की जाँच करें, और सुनिश्चित करें कि आपने सब कुछ ठीक किया है। कुछ मिडी फाइलें काम नहीं करतीं, लेकिन वे दुर्लभ हैं।

चरण 16: फिन

फिन!
फिन!

उम्मीद है कि आपके साथ सब कुछ ठीक हो गया है, और आप नई जिंदगी को देखते हुए एक प्राचीन तकनीक पर MIDI फाइलों को जाम कर रहे हैं!

हालाँकि, यदि आप नहीं हैं, तो हार न मानें! मेरे तरीके से एक टिप्पणी भेजें, और मुझे मदद करने में खुशी होगी। बेशक, मुझे टिप्पणियों में सुझाव देने के लिए स्वतंत्र महसूस करें।

हैप्पी चिपट्यून्स!

सिफारिश की: