فهرست مطالب:

چراغهای پری موسیقی: 6 مرحله (همراه با تصاویر)
چراغهای پری موسیقی: 6 مرحله (همراه با تصاویر)

تصویری: چراغهای پری موسیقی: 6 مرحله (همراه با تصاویر)

تصویری: چراغهای پری موسیقی: 6 مرحله (همراه با تصاویر)
تصویری: گوز زدن پریانکا چوپرا هنرپیشه بالیوود در یکی از برنامه های لایف تلویزیونی |C&C 2024, جولای
Anonim
Image
Image

بیشتر توسط نویسنده دنبال کنید:

اینتروالومتر آردوینو
اینتروالومتر آردوینو
نه فقط یک ساعت سنج
نه فقط یک ساعت سنج
نه فقط یک ساعت سنج
نه فقط یک ساعت سنج
دماسنج یک پیکسلی
دماسنج یک پیکسلی
دماسنج یک پیکسلی
دماسنج یک پیکسلی

درباره: من دوست دارم از موشک تا لوازم الکترونیکی وسایل بسازم. اطلاعات بیشتر در مورد IanCumming »

همگی خوش آمدید

تقریباً فصل عید است و تعدادی از مغازه ها شروع به تزئین تزئینات جشن خود کرده اند ، من فکر کردم زمان مناسبی برای ساختن برخی از چراغ های پری موسیقی است!

مرحله 1: قطعات مورد استفاده

قطعات مورد استفاده
قطعات مورد استفاده

من از موارد زیر استفاده خواهم کرد:

  • 12 عدد LED
  • 12 مقاومت محدود کننده جریان
  • 1 ULN 2803 دارلینگتون ترانزیستور آرایه
  • چند سیم جامپر
  • بلندگوی پیزو
  • یک تخته نان و
  • یک آردوینو
  • برای ساختن رشته چراغ های پری من از 5 سیم کابل اترنت استفاده کردم

مرحله 2: کد

// GLOBAL VARS int barTime = 1200؛ // 8/8 = 1000ms بایت nrLEDS = 4؛ // 4 LED پایه ، می توانید تعداد زیادی led بایت موازی = {3 ، 4 ، 5 ، 6}؛ بایت بلندگو = 11؛ byte patternLength = 64؛ // pattern Length بایت songLength = 51؛ const byte song = {// Jingle Bells Data 29، 2، 29، 2، 29، 4، 29، 2، 29، 2، 29، 4، 29، 2، 32، 2، 25، 3، 27، 1، 29، 8، 30، 2، 30، 2، 30، 3، 30، 1، 30، 2، 29، 2، 29، 2، 29، 1، 29، 1، 29، 2، 27، 2، 27، 2، 29، 2، 27، 4، 32، 4، 29، 2، 29، 2، 29، 4، 29، 2، 29، 2، 29، 4، 29، 2، 32، 2، 25، 3، 27، 1، 29، 8، 30، 2، 30، 2، 30، 2، 30، 2، 30، 2، 29، 2، 29، 2، 29، 1، 29، 1، 32، 2، 32 ، 2 ، 30 ، 2 ، 27 ، 2 ، 25 ، 8} ؛ // ساختار شماره توجه است سپس // NoteLength در الگوی const byte 8th = {// داده های الگو 0b0001 ، 0b0010 ، 0b0100 ، 0b1000 ، // بیت ها با Leds در آرایه 0b0001 ، 0b0010 ، 0b0100 ، 0b1000 ، 0b0001 ، 0b0010، 0b0100، 0b1000، 0b0001، 0b0010، 0b0100، 0b1000، 0b1000، 0b1100، 0b0100، 0b0110، 0b0010، 0b0011، 0b0001، 0b1001، 0b1000، 0b1100، 0b0100، 0b0110، 0b0010، 0b0011، 0b0001، 0b1001، 0b1010، 0b0101، 0b1010، 0b0101، 0b1010، 0b0101، 0b1010، 0b0101، 0b1010، 0b0101، 0b1010، 0b0101، 0b1010، 0b0101، 0b1010، 0b0101، 0b1100، 0b0011، 0b11b، 01100، 01100، 01100، 01100، 01100، 01100، 00000، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 00000، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 01100، 01100 0 0b0011، 0b1100، 0b0011، 0b1100، 0b0011،}؛

ابتدا متغیرهای خود را اعلام می کنم ، متغیرهای جالب Song and Pattern هستند.

  • آهنگ آهنگ را ذخیره می کند ؛ در این مورد زنگ های جینگل است.
  • الگو موقعیت های خاموش و روشن را در بیت مقادیر موجود در آرایه ذخیره می کند.

توابع سفارشی

// FUNCTIONS int noteToHz (int note) {// تبدیل یادداشت شماره. به Frequency float freq = 440 * (توان (1.059463094359 ، توجه 21)) ؛ // -21 به شما یادداشت 1 را در C3 (من فکر می کنم) return int (freq) به شما می دهد. // نتایج دقیق با 1 هرتز} LED های خالی (byte PORT_X) {// وضعیت LED را برای (int q = 0؛ q

دو عملکردی که دارم موارد زیر را انجام می دهم:

  • فرکانس عملکرد تون را در حلقه محاسبه کنید
  • بسته به مقدار ارسال شده به عملکرد ، LED ها را روشن یا خاموش کنید

تابع راه اندازی

void setup () {// setup OUTPUT pin pin pinMode (بلندگو ، OUTPUT) ؛ برای (int t = 0؛ t <nrLEDS؛ t ++) {pinMode (leds [t] ، OUTPUT) ؛ }}

در عملکرد راه اندازی ، پین های مورد نیاز را روی OUTPUT تنظیم می کنم.

تابع حلقه

void loop () {// Music Loop for (int t = 0؛ t <songLength؛ t ++) {// یادداشت ها ، طول و پخش ملودی int note = noteToHz (آهنگ [t * 2]) ؛ int length = ((آهنگ [(t * 2) +1] * barTime) / 8) ؛ تن (بلندگو ، یادداشت ، طول - 50) ؛ // چراغ چشمک زن! lightLEDs (الگو [t٪ patternLength]) ؛ تاخیر (طول) ؛ } // Silence Loop int randomSilence = random (1000، 5000)؛ برای (int t = 0 ؛ t

من 2 حلقه در تابع حلقه اصلی دارم. یک حلقه آهنگ و یک حلقه سکوت

حلقه آهنگ داده های آرایه آهنگ را می خواند ، نت را با استفاده از عملکرد تن پخش می کند

حلقه آهنگ ،

  • خواندن داده های آرایه آهنگ ،
  • سپس نت را با استفاده از عملکرد تن پخش کنید
  • چراغ LED ، آرایه الگوی خواندن را روشن کنید.

در حلقه سکوت

فقط LED ها روشن می شوند

آردوینو را وصل کرده و کد را بارگذاری کنید. (سپس آن را از برق بکشید)

مرحله 3: راه اندازی مدار

راه اندازی مدار
راه اندازی مدار
راه اندازی مدار
راه اندازی مدار
راه اندازی مدار
راه اندازی مدار
راه اندازی مدار
راه اندازی مدار

من می خواهم با رشته نور شروع کنم

  • من از سیم یک کابل اترنت استفاده کردم و 4 LED را به طور موازی چهار بار لحیم کردم ، و مطمئن شدم که LED ها را به طور مساوی بیش از 2 متر فاصله دهم.
  • من آند هر یک را به یک سیم لحیم کردم.
  • سپس کاتد هر LED تا 4 سیم جداگانه. البته با مقاومت
  • من این فرآیند را 3 بار برای بدست آوردن یک رشته 12 عدد LED تکرار کردم و پین هدر را در انتهای 5 سیم قرار دادم

ریل های مثبت و آسیاب شده را به تخته نان متصل کنید

مرحله 4: ULN2803

ULN2803
ULN2803
ULN2803
ULN2803
ULN2803
ULN2803

تراشه ULN2308 را روی تخته نان قرار دهید

ULN2308 یک تراشه آرایه ترانزیستوری است. از برگه اطلاعاتی که می بینم

  • آن پین 1 ورودی است که پین 18 را "روشن" می کند
  • پین 2 17 روشن می شود. و غیره.
  • پین 9 آسیاب شده است
  • پین 9 تراشه را به ریل زمین وصل کنید
  • ریل مثبت را به یک نوار ترمینال ، یک نوار بالای پین 18 وصل کنید (دلیل آن را در یک دقیقه خواهید دید)
  • پین 1 تراشه را به پین 3 آردوینو وصل کنید
  • 2 به 4 می رسد
  • 3 تراشه به 5 می رود و
  • 4 به پین 6 آردوینو می رود
  • رشته LED را روی تخته نان قرار دهید. جایی که سیم آند معمولی به نوار متصل به 5 ولت متصل است. بقیه پین های نور پری باید به پین 18 ، 17 ، 16 و 15 تراشه بروند.

مرحله 5: افزودن صدا

افزودن صدا
افزودن صدا
  • بلندگوی Piezo را بین 2 نوار ترمینال وصل کنید
  • قطب منفی عنصر Piezo را به زمین وصل کنید
  • انتهای دیگر بلندگو به پین 11

مرحله 6: نتیجه گیری

نتیجه
نتیجه
نتیجه
نتیجه

من یک سری نور دارم که به طور تصادفی زنگ های جینگل را می زند تا به من یادآوری کند که فصل جشن است.

توصیه شده: