- مطلوبہ مواد:
- سرکٹ ڈایاگرام:
- اسکیمات اور وضاحت:
- کو سمجھنا
- ایردوینو پر پیانو ٹن بجانا:
- پروگرامنگ ارڈینو:
- کھیلیں ، ریکارڈ کریں ، دوبارہ چلائیں اور دوبارہ کریں! :
اردوینو ان لوگوں کے لئے ایک वरदान رہا ہے جو الیکٹرانکس کے پس منظر سے نہیں ہیں آسانی سے چیزیں بنا سکتے ہیں۔ یہ ایک عمدہ پروٹو ٹائپنگ ٹول رہا ہے یا کسی چیز کو ٹھنڈا کرنے کی کوشش کرنا ہے ، اس پروجیکٹ میں ہم اردوینو کا استعمال کرتے ہوئے ایک چھوٹا سا ابھی تک تفریح پیانو تیار کرنے جارہے ہیں ۔ یہ پیانو محض 8 پش بٹنوں اور بزر کے ساتھ بالکل صاف ہے۔ اسپیکر پر مختلف اقسام کے پیانو نوٹ بنانے کیلئے یہ آرڈینوو کے ٹون () فنکشن کا استعمال کرتا ہے ۔ اس کو تھوڑا سا مسال کرنے کے لئے ، ہم نے پروجیکٹ میں ریکارڈنگ کی خصوصیت شامل کی ہے ، اس سے ہمیں قابل بناتا ہے کہ ہم اس کی آواز کو ریکارڈ کریں اور جب ضرورت ہو تو بار بار اسے بجائیں۔ دلچسپ دلچسپ ہے !! تو چلتے ہیں 'عمارت….
مطلوبہ مواد:
- ارڈینو اونو
- 16 * 2 LCD ڈسپلے
- بزر
- ٹرمر 10 ک
- ایس پی ڈی ٹی سوئچ
- پش بٹن (8 نمبر)
- مزاحم (10 ک ، 560 آر ، 1.5 ک ، 2.6 ک ، 3.9 ، 5.6 ک ، 6.8 ک ، 8.2 ک ، 10 ک)
- بریڈ بورڈ
- مربوط تاروں
سرکٹ ڈایاگرام:
مکمل ارودوو پیانو پروجیکٹ کچھ مربوط تاروں کے ساتھ بریڈ بورڈ کے اوپر بنایا جاسکتا ہے۔ پروجیکٹ کے روٹی بورڈ کے نظارے کو فروٹیزنگ کا استعمال کرتے ہوئے سرکٹ ڈایاگرام نیچے دکھایا گیا ہے
صرف سرکٹ ڈایاگرام کی پیروی کریں اور اس کے مطابق تاروں کو جوڑیں ، پی سی بی ماڈیول کے ساتھ استعمال شدہ پش بٹن اور بززر لیکن اصل ہارڈ ویئر میں ہم نے صرف سوئچ اور بوزر استعمال کیا ہے ، اس سے آپ کو زیادہ الجھن نہیں ہونی چاہئے کیونکہ ان میں ایک ہی قسم کا پن باہر ہے۔. اپنے رابطوں کو بنانے کے ل You آپ ہارڈ ویئر کی نیچے والی تصویر کا بھی حوالہ دے سکتے ہیں۔
بائیں طرف سے ریزسٹرس کی قدر مندرجہ ذیل ترتیب میں ہے ، 10 ک ، 560 آر ، 1.5 ک ، 2.6 ک ، 3.9 ، 5.6 ک ، 6.8 ک ، 8.2 ک اور 10 ک ۔ اگر آپ کے پاس وہی ڈی پی ایس ٹی سوئچ نہیں ہے تو آپ نارمل ٹوگل سوئچ استعمال کرسکتے ہیں جیسا کہ اوپر سرکٹ ڈایاگرام میں دکھایا گیا ہے۔ اب آئیے اس منصوبے کی تدبیرات کو دیکھیں کہ ہم نے مندرجہ ذیل کنکشن کیوں بنائے ہیں۔
اسکیمات اور وضاحت:
سرکٹ آریگرام کے لئے اسکیمیٹکس جو اوپر دکھایا گیا ہے ذیل میں دیا گیا ہے ، یہ بھی فرائزنگ کا استعمال کرتے ہوئے بنایا گیا تھا۔
ایک بنیادی تعلق جو ہمیں سمجھنا ہے وہ یہ ہے کہ ہم نے یلوگ A0 پن کے ذریعہ 8 پش بٹنوں کو ارودوینو سے کیسے جوڑا ہے ۔ بنیادی طور پر ہمیں 8 ان پٹ پنوں کی ضرورت ہے جو 8 ان پٹ پش بٹنوں سے منسلک ہوسکتے ہیں ، لیکن اس طرح کے پروجیکٹس کے لئے ہم مائکروکانٹرولر کے 8 پنوں کو صرف پش بٹنوں کے لئے استعمال نہیں کرسکتے ہیں کیونکہ بعد میں استعمال کے ل for ہمیں ان کی ضرورت ہوسکتی ہے۔ ہمارے معاملے میں ہمارے پاس LCD ڈسپلے کو انٹرفیس کرنا ہے۔
لہذا ہم آرڈینوو کے ینالاگ پن کا استعمال کرتے ہیں اور سرکٹ کو مکمل کرنے کے لئے مختلف ریزٹر قیمتوں کے ساتھ ایک ممکنہ ڈویڈر تشکیل دیتے ہیں۔ اس طرح جب ہر بٹن کو دبایا جاتا ہے تو ینالاگ پن کو ایک مختلف ینالاگ وولٹیج فراہم کیا جائے گا۔ صرف دو مزاحم کاروں اور دو پش بٹنوں کے ساتھ ایک نمونہ سرکٹ ذیل میں دکھایا گیا ہے۔
اس معاملے میں اے ڈی سی پن +5V وصول کرے گا جب پش بٹن دبائے نہیں جائیں گے ، اگر پہلا بٹن دبایا جاتا ہے تو ممکنہ تقسیم 560R ریزٹر کے ذریعے مکمل ہوجاتا ہے اور اگر دوسرا بٹن دب جاتا ہے تو ممکنہ ڈویڈر 1.5 کا استعمال کرتے ہوئے مقابلہ ہوتا ہے۔ k مزاحم۔ اس طرح ADC پن سے موصولہ وولٹیج ممکنہ تقسیم والے فارمولوں کی بنیاد پر مختلف ہوگی۔ اگر آپ اس بارے میں مزید جاننا چاہتے ہیں کہ ممکنہ تقسیم کار کس طرح کام کرتا ہے اور اے ڈی سی پن کے ذریعہ موصولہ وولٹیج کی قیمت کا حساب کتاب کیا جائے تو آپ اس امکانی تقسیم والے کیلکولیٹر صفحے کو استعمال کرسکتے ہیں۔
اس کے علاوہ سارے کنکشن سیدھے آگے ہیں ، ایل سی ڈی پنوں 8 ، 9 ، 10 ، 11 اور 12 سے جڑا ہوا ہے ۔ بزر پن 7 سے منسلک ہے اور ایس پی ڈی ٹی سوئچ اردوینو کے پن 6 سے منسلک ہے۔ مکمل پروجیکٹ لیپ ٹاپ کے USB پورٹ کے ذریعے چلتا ہے۔ آپ ڈی آر جیک کے ذریعہ آرڈینو کو 9V یا 12V سپلائی سے بھی جوڑ سکتے ہیں اور پروجیکٹ اب بھی اسی طرح کام کرے گا۔
کو سمجھنا
اردوینو میں ایک آسان ٹون () فنکشن ہے جس کو مختلف فریکوئنسی سگنل تیار کرنے کے لئے استعمال کیا جاسکتا ہے جو بززر کا استعمال کرتے ہوئے مختلف آوازیں پیدا کرنے کے لئے استعمال کیا جاسکتا ہے۔ تو آئیے ہم سمجھتے ہیں کہ فنکشن کیسے کام کرتا ہے اور اسے اریڈینو کے ساتھ کیسے استعمال کیا جاسکتا ہے۔
اس سے پہلے ہمیں یہ جان لینا چاہئے کہ پیزو بزر کیسے کام کرتا ہے۔ ہم نے اپنے اسکول میں پیزو کرسٹل کے بارے میں سیکھا ہوگا ، یہ ایک کرسٹل کے علاوہ کچھ نہیں ہے جو مکینیکل کمپن کو بجلی میں تبدیل کرتا ہے یا اس کے برعکس۔ یہاں ہم ایک متغیر موجودہ (تعدد) لگاتے ہیں جس کے لئے اس طرح سے کرسٹل کمپن ہوتا ہے جس سے آواز پیدا ہوتی ہے۔ لہذا ہمیں پیزو بزر بنانے کے ل some کچھ شور پیدا کرنے کے ل we ہمیں پائزو الیکٹرک کرسٹل کو کمپن کرنے کے ل make بنانا پڑے گا ، شور اور آواز کا رنگ اس بات پر منحصر ہے کہ کرسٹل کے کتنے تیز رفتار سے کمپن ہوتا ہے۔ لہذا موجودہ اور تعدد کو مختلف کرتے ہوئے ٹون اور پچ پر قابو پایا جاسکتا ہے۔
ٹھیک ہے ، تو ہم ارڈوینو سے متغیر تعدد کیسے حاصل کریں گے؟ یہ وہ جگہ ہے جہاں ٹون () فنکشن آتا ہے۔ ٹون () ایک مخصوص پن پر ایک خاص تعدد پیدا کرسکتا ہے۔ اگر ضرورت ہو تو وقت کی مدت کا بھی ذکر کیا جاسکتا ہے۔ ٹون () کا نحو ہے
نحو سر (پن ، تعدد) ٹون (پن ، تعدد ، دورانیہ) پیرامیٹرز پن: وہ پن جس پر ٹون فریکوئنسی تیار کرنا ہے: ہرٹز میں سر کی تعدد - بغیر دستخط شدہ انٹریٹیشن: ملی سیکنڈ میں ٹون کی مدت (اختیاری 1) - طویل دستخط شدہ
پن کی اقدار آپ کا کوئی ڈیجیٹل پن ہوسکتی ہیں۔ میں نے یہاں پن نمبر 8 استعمال کیا ہے۔ جو فریکوئنسی تیار کی جا سکتی ہے اس کا انحصار آپ کے اردوینو بورڈ میں ٹائمر کے سائز پر ہے۔ یو این او اور دیگر عام بورڈز کے ل produced کم سے کم تعدد جو تیار کی جاسکتی ہے 31 ہ ہرٹز ہے اور جس کی زیادہ سے زیادہ تعدد پیدا کی جاسکتی ہے وہ 65535 ہرٹج ہے۔ تاہم ہم انسان 2000 ہ ہرٹز اور 5000 ہرٹج کے درمیان صرف تعدد ہی سن سکتے ہیں۔
ایردوینو پر پیانو ٹن بجانا:
ٹھیک ہے ، اس سے پہلے کہ میں اس موضوع پر آغاز کروں ، مجھے یہ واضح کردیں کہ میں میوزیکل نوٹ یا پیانو والا نوعی ہوں ، لہذا براہ کرم مجھے معاف کردیں اگر اس عنوان کے تحت کوئی بھی بات مذموم ہے۔
اب ہم جانتے ہیں کہ ہم کچھ آوازیں پیدا کرنے کے لئے ایردوینو میں ٹن فنکشن کا استعمال کرسکتے ہیں ، لیکن ہم اسے استعمال کرتے ہوئے کسی مخصوص نوٹ کے ٹن کو کس طرح ادا کرسکتے ہیں۔ ہمارے لئے خوش قسمتی سے ایک لائبریری موجود ہے جس کا نام "پچیز ایچ" ہے ، جسے بریٹ ہیگ مین نے لکھا ہے ۔ اس لائبریری میں تمام معلومات ہیں جس کے بارے میں پیانو پر کس نوٹ کے برابر ہے۔ مجھے حیرت ہوئی کہ کتنی اچھی طرح سے یہ لائبریری پیانو پر کام کر سکتی ہے اور تقریبا ہر نوٹ چلا سکتی ہے ، میں نے اسی طرح قزاقوں کیریبین ، کریزی میڑک ، ماریو اور یہاں تک کہ ٹائٹینک کے پیانو نوٹ بجانے کے لئے استعمال کیا اور وہ حیرت انگیز لگ رہے تھے۔ افوہ! ہمیں یہاں تھوڑا سا موضوع مل رہا ہے ، لہذا اگر آپ اس میں دلچسپی رکھتے ہیں تو آرڈینو پروجیکٹ کا استعمال کرتے ہوئے دھنیں بجانا چاہتے ہیں۔ آپ کو اس پراجیکٹ میں پچز لائبریری کے بارے میں مزید وضاحت ملے گی ۔
ہمارے پروجیکٹ میں صرف 8 پش بٹن ہیں لہذا ہر بٹن صرف ایک مخصوص میوزیکل نوٹ چلا سکتا ہے اور اس طرح ہم صرف 8 نوٹ ہی کھیل سکتے ہیں۔ میں نے پیانو پر سب سے زیادہ استعمال ہونے والے نوٹوں کا انتخاب کیا ، لیکن کیا آپ کسی بھی 8 کو منتخب کرسکتے ہیں یا اس سے بھی زیادہ دباؤ والے بٹنوں سے پروجیکٹ کو بڑھا سکتے ہیں اور مزید نوٹ شامل کرسکتے ہیں۔
اس پروجیکٹ میں جو نوٹوں کا انتخاب کیا گیا ہے وہ نوٹ C4 ، D4 ، E4 ، F4 ، G4 ، A4 ، B4 اور C5 ہیں جن کو بالترتیب 1 سے 8 کے بٹنوں کا استعمال کرکے کھیلا جاسکتا ہے۔
پروگرامنگ ارڈینو:
کافی تھیوری آئیے ہم اردوینو کو پروگرام کرنے کے تفریحی حص toے تک پہنچیں۔ مکمل Arduino پروگرام اس صفحے کے آخر میں دیا گیا ہے کیا آپ بے چین تو نیچے کود یا کس طرح کوڈ کاموں کو سمجھنے کے لئے میں مزید پڑھ سکتے ہیں.
ہمارے اردوینو پروگرام میں ہمیں پن A0 سے مطابق وولٹیج پڑھنا ہے ، پھر پیش گوئی کریں کہ کون سا بٹن دب گیا ہے اور اس بٹن کے لئے متعلقہ لہجہ بجانا ہے۔ یہ کام کرتے ہوئے ہمیں یہ بھی ریکارڈ کرنا چاہئے کہ صارف نے کون سے بٹن دبائے ہیں اور اس نے کتنی دیر دبائے ہیں ، تاکہ ہم اس لہجے کو دوبارہ بنا سکیں جو صارف نے بعد میں کھیلا تھا۔
منطق کے حصے میں جانے سے پہلے ، ہمیں یہ اعلان کرنا ہوگا کہ ہم کون سے 8 نوٹ کھیل رہے ہیں ۔ اس کے بعد نوٹوں کی متعلقہ تعدد پچوں لائبریری سے لی گئی ہے اور پھر ایک صف بنائی گئی ہے جیسا کہ ذیل میں دکھایا گیا ہے۔ یہاں نوٹ سی 4 کھیلنے کی فریکوئنسی 262 ہے۔
INT نوٹ = {262 ، 294 ، 330 ، 349 ، 392 ، 440 ، 494 ، 523}؛ // C4 ، D4 ، E4 ، F4 ، G4 ، A4 ، B4 ، کے لئے تعدد مرتب کریں
اگلا ہم نے LCD ڈسپلے کس پن سے منسلک ہے اس کا ذکر کرنا ہے۔ اگر آپ اوپر دیئے گئے عین حکمت عملی پر عمل پیرا ہیں تو آپ کو یہاں کچھ بھی تبدیل کرنے کی ضرورت نہیں ہے۔
کونٹ انٹ آر ایس ایس = 8 ، این = 9 ، ڈی 4 = 10 ، ڈی 5 = 11 ، ڈی 6 = 12 ، ڈی 7 = 13؛ جس LCD کرنے // پنوں منسلک ہے LiquidCrystal LCD (روپے، میں، D4، D5، D6، D7)؛
اگلا ، ہمارے سیٹ اپ فنکشن کے اندر ہم ڈیبگنگ کے لئے صرف ایل سی ڈی ماڈیول اور سیریل مانیٹر کی ابتدا کرتے ہیں۔ ہم یہ بھی یقینی بنانے کے لئے ایک انٹرو میسج ڈسپلے کرتے ہیں کہ چیزیں منصوبے کے مطابق کام کر رہی ہیں۔ اگلا ، مین لوپ فنکشن کے اندر ہمارے پاس دو جبکہ لوپ ہوتے ہیں ۔
جب تک کہ ایس پی ڈی ٹی سوئچ زیادہ ریکارڈنگ میں رکھا جائے گا تب لوپ پر عمل درآمد ہوگا ۔ ریکارڈنگ موڈ میں صارف مطلوبہ ٹنوں کی ادائیگی کرسکتا ہے اور اسی کے ساتھ جو ٹون چلایا جارہا ہے وہ بھی محفوظ ہوجائے گا۔ تو جبکہ لوپ نیچے اس طرح لگتا ہے
جبکہ (ڈیجیٹل ریڈ (6) == 0) // اگر ٹوگل سوئچ ریکارڈنگ موڈ میں سیٹ ہے۔ lcd.setCursor (0، 0)؛ lcd.print ("ریکارڈنگ..")؛ lcd.setCursor (0 ، 1)؛ کھوج_بٹن ()؛ پلے ٹون ()؛ }
جیسا کہ آپ نے محسوس کیا ہوگا کہ ہمارے پاس جبکہ لوپ کے اندر دو کام ہیں ۔ پہلی فنکشن Detect_bton () استعمال کیا جاتا ہے جس میں معلوم ہوتا ہے کہ صارف نے کون سے بٹن دبائے ہیں اور دوسرا فنکشن Play_tone () متعلقہ لہجے کو چلانے کے لئے استعمال کیا جاتا ہے۔ اس فنکشن کے علاوہ ڈٹیکٹ_بٹن () فنکشن میں یہ بھی ریکارڈ کیا جاتا ہے کہ کون سا بٹن دبائے جارہا ہے اور پلے ٹون () فنکشن میں یہ ریکارڈ ہوتا ہے کہ بٹن کو دبانے میں کتنا عرصہ دب گیا تھا۔
ڈیٹیکٹ_ بٹن () فنکشن کے اندر ہم پن A0 سے ینالاگ وولٹیج پڑھتے ہیں اور اسے کچھ وضاحتی قدروں سے موازنہ کرتے ہیں تاکہ معلوم کریں کہ کون سا بٹن دب گیا ہے۔ قیمت کا تعین یا تو اوپر والے وولٹیج ڈیوائڈر کیلکولیٹر کے ذریعہ کیا جاسکتا ہے یا سیریل مانیٹر کے ذریعے یہ معلوم کرنے کے لئے کہ ہر بٹن کے لئے کیا قیمت پڑھی جاتی ہے۔
باطل Detect_button () { analogVal = analogRead (A0)؛ // ینالاگ والٹاگ کو پن A0 پیوی_بٹن = بٹن پر پڑھیں؛ // صارف کے دبائے ہوئے آخری بٹن کو یاد رکھیں اگر (اینالاگ <<< 550) بٹن = 8؛ if (analogVal <500) بٹن = 7؛ if (analogVal <450) بٹن = 6؛ if (analogVal <400) بٹن = 5؛ if (analogVal <300) بٹن = 4؛ اگر (اینالاگ <250) بٹن = 3؛ if (analogVal <150) بٹن = 2؛ اگر (اینالاگ <100) بٹن = 1؛ if (analogVal> 1000) بٹن = 0؛ / **** ایک صف میں دبے ہوئے بٹنوں کو ریکارڈ کریں *** / اگر (بٹن! = پییو_بٹن && پیوی_بٹن! = 0) { ریکارڈ شدہ_بٹن = پیوی_بٹن؛ بٹن_ انڈیکس ++؛ ریکارڈ شدہ بٹن = 0؛ بٹن_ انڈیکس ++؛ ording / ** ریکارڈنگ پروگرام کا اختتام ** / }
جیسا کہ کہا گیا ہے ، اس فنکشن کے اندر ہم اس ترتیب کو بھی ریکارڈ کرتے ہیں جس میں بٹن دبائے جاتے ہیں۔ ریکارڈ شدہ اقدار ریکارڈ شدہ بٹن نامی ایک صف میں محفوظ ہیں ۔ ہم پہلے چیک کرتے ہیں کہ آیا وہاں کوئی نیا بٹن دبایا گیا ہے ، اگر دب جاتا ہے تو ہم یہ بھی چیک کرتے ہیں کہ آیا یہ بٹن نہیں ہے۔ جہاں بٹن 0 کچھ نہیں ہے لیکن کوئی بٹن نہیں دبایا جاتا ہے۔ اگر لوپ کے اندر ہم متغیر والے بٹن_ انڈیکس کے ذریعہ دیئے گئے اشاریہ کے مقام پر قیمت کو ذخیرہ کرتے ہیں اور پھر ہم اس اشاریہ کی قیمت میں بھی اضافہ کرتے ہیں تاکہ ہم اسی جگہ پر لکھیں۔
/ **** ایک صف میں دبے ہوئے بٹنوں کو ریکارڈ کریں *** / اگر (بٹن! = پییو_بٹن && پیوی_ بٹن! = 0) { ریکارڈ شدہ_بٹن = پیوی_بٹن؛ بٹن_ انڈیکس ++؛ ریکارڈ شدہ بٹن = 0؛ بٹن_ انڈیکس ++؛ ording / ** ریکارڈنگ پروگرام کا اختتام ** /
پلے ٹون () فنکشن کے اندر ، اگر شرطیں ہوں تو ہم ایک سے زیادہ استعمال کرکے دبائے جانے والے بٹن کیلئے متعلقہ لہجہ بجائیں گے ۔ نیز ہم ریکارڈڈ ٹائم نامی ایک صف کا استعمال کریں گے جس کے اندر ہم اس وقت کی بچت کریں گے جس کے لئے بٹن دبایا گیا تھا۔ آپریشن ریکارڈنگ بٹن کی ترتیب سے ملتا جلتا ہے جیسا کہ ہم ملیس () فنکشن کا استعمال کرتے ہیں اس بات کا تعین کرنے کے لئے کہ ہر بٹن کو کتنے عرصے سے دبایا جاتا ہے ، متغیر کے سائز کو کم کرنے کے ل 10. بھی ہم 10 کو قیمت تقسیم کرتے ہیں۔ بٹن 0 کے لئے ، جس کا مطلب ہے کہ صارف نہیں ہے کسی بھی چیز کو دبانے سے ہم اسی مدت کے لئے کوئی سر نہیں بجاتے ہیں۔ فنکشن کے اندر مکمل کوڈ ذیل میں دکھایا گیا ہے۔
باطل Play_tone () { / **** Rcord ایک صف میں ایک بٹن پریس کے درمیان وقت کی تاخیر *** / اگر (بٹن = pev_button!) { lcd.clear ()؛ // پھر اسے صاف کریں نوٹ_ٹائم = (ملیس () - اسٹارٹ ٹائم) / 10؛ ریکارڈ شدہ_ٹائم = نوٹ_ٹائم؛ وقت_ہدف ++؛ اسٹارٹ ٹائم = ملیس ()؛ } / ** ریکارڈنگ پروگرام کے اختتام ** / اگر (بٹن == 0) { noTone (7)؛ lcd.print ("0 -> توقف..")؛ } if (بٹن == 1) { ٹون (7 ، نوٹ)؛ lcd.print ("1 -> NOTE_C4")؛ } if (بٹن == 2) { ٹون (7 ، نوٹ)؛ lcd.print ("2 -> NOTE_D4")؛ } اگر (بٹن == 3) { سر (7 ، نوٹ)؛ lcd.print ("3 -> NOTE_E4")؛ } if (بٹن == 4) { ٹون (7 ، نوٹ)؛ lcd.print ("4 -> NOTE_F4")؛ } if (بٹن == 5) { ٹون (7 ، نوٹ)؛ lcd.print ("5 -> NOTE_G4")؛ } if (بٹن == 6) { ٹون (7 ، نوٹ)؛ lcd.print ("6 -> NOTE_A4")؛ } if (بٹن == 7) { ٹون (7 ، نوٹ)؛ lcd.print ("7 -> NOTE_B4")؛ } if (بٹن == 8) { ٹون (7 ، نوٹ)؛ lcd.print ("8 -> NOTE_C5")؛ } }
آخرکار ریکارڈنگ کے بعد صارف کو ریکارڈڈ ٹون بجانے کے لئے ڈی پی ایس ٹی کو دوسری سمت ٹوگل کرنا پڑتا ہے۔ جب یہ کیا جاتا ہے تو پروگرام پچھلے حصے سے ٹوٹ جاتا ہے جبکہ دوسرے میں داخل ہوتا ہے جبکہ لوپ میں داخل ہوتا ہے جہاں ہم نوٹ بٹنوں کی ترتیب میں کھیلتے ہیں جس کی مدت پہلے ریکارڈ کی جاتی تھی۔ ایسا کرنے کا کوڈ نیچے دکھایا گیا ہے۔
جبکہ (digitalRead (6) == 1) // تو ٹوگل سوئچ موڈ میں کھیلنے میں مقرر کیا گیا ہے { lcd.clear ()؛ lcd.setCursor (0 ، 0)؛ lcd.print ("اب چل رہا ہے..")؛ (INT i = 0؛ i <sizeof (ریکارڈ_بٹن) / 2؛ i++) { تاخیر ((ریکارڈ شدہ_وقت) * 10)؛ // اگلی دھن ادا کرنے سے پہلے انتظار کریں اگر (ریکارڈ شدہ بٹن == 0) کوئی ٹون (7)؛ // صارف سہارے ٹچ کسی بھی بٹن پر کسی اور سر (7، نوٹوں - 1)])؛ // صارف کی طرف سے چھوا بٹن پر اسی آواز ادا } } }
کھیلیں ، ریکارڈ کریں ، دوبارہ چلائیں اور دوبارہ کریں!:
دکھائے گئے سرکٹ ڈایاگرام کے مطابق ہارڈ ویئر بنائیں ، اور کوڈ کو ارڈینو بورڈ اور اس کے دکھائے جانے والے وقت پر اپ لوڈ کریں۔ ایس پی ڈی ٹی کو ریکارڈنگ کے موڈ میں رکھیں اور اپنی پسند کے ٹون بجانا شروع کریں ، ہر ایک بٹن کو دبانے سے مختلف لہجے پیدا ہوں گے۔ اس موڈ کے دوران ، LCD " ریکارڈنگ…" دکھائے گا اور دوسری لائن پر آپ اس نوٹ کا نام دیکھیں گے جو اس وقت دبائے جارہے ہیں جیسا کہ ذیل میں دکھایا گیا ہے
ایک بار جب آپ اپنا ٹون بجائیں تو ایس پی ڈی ٹی سوئچ کو دوسری طرف تبدیل کریں اور ایل سی ڈی کو " اب چل رہا ہے.." دکھائے اور پھر اس ٹون کو بجانا شروع کریں جو آپ نے ابھی کھیلا تھا۔ جب تک ٹوگل سوئچ کو پوزیشن میں رکھا جاتا ہے جب تک کہ نیچے دی گئی تصویر میں دکھایا گیا ہے ، اسی آواز کو بار بار کھیلا جائے گا۔
پروجیکٹ کا مکمل کام نیچے دی گئی ویڈیو میں پایا جاسکتا ہے۔ امید ہے کہ آپ اس پروجیکٹ کو سمجھ گئے ہوں گے اور اس کی تعمیر میں لطف اندوز ہوں گے۔ اگر آپ کو اس پوسٹ کو بنانے میں کوئی پریشانی ہے تو ان کو کمنٹ سیکشن میں بھیجیں یا اپنے پروجیکٹ میں تکنیکی مدد کے لئے فورمز کا استعمال کریں۔ ذیل میں دیئے گئے مظاہرے کی ویڈیو چیک کرنا بھی نہ بھولیں ۔