فهرست مطالب:

آهنگ تم PUBG+انیمیشن با آردوینو !: 13 مرحله (همراه با تصاویر)
آهنگ تم PUBG+انیمیشن با آردوینو !: 13 مرحله (همراه با تصاویر)

تصویری: آهنگ تم PUBG+انیمیشن با آردوینو !: 13 مرحله (همراه با تصاویر)

تصویری: آهنگ تم PUBG+انیمیشن با آردوینو !: 13 مرحله (همراه با تصاویر)
تصویری: حرکات زشت سحر قریشی در باشگاه مردانه در دبی#سحرقریشی #امیرتتلو #تتلو #سحر_قریشی 2024, نوامبر
Anonim
Image
Image
جمع آوری تمام قسمت ها
جمع آوری تمام قسمت ها

با سلام و خوش آمدید به این برنامه آموزشی سرگرم کننده! امیدوارم همگی خوب و سلامت باشید. این پروژه کوچک اما شگفت انگیز در مورد پخش آهنگ تم PUBG و حتی ایجاد برخی از انیمیشن های بازی با استفاده از arduino است.

اجزای مورد استفاده به راحتی در دسترس هستند و جمع آوری آنها بر روی یک تخته نان بسیار آسان است. من کل ساختمان و فرآیند برنامه نویسی را در این دستورالعمل به اشتراک می گذارم ، تا انتها ادامه دهید!

پیشنهاد می کنم ویدیو را تماشا کنید تا از پروژه ایده بگیرید:) اگر دوست داشتید ، ویدیو را لایک و به اشتراک بگذارید. اگر از ساختن من لذت می برید ، مشترک کانال من شوید. با تشکر!

بنابراین ، بدون هیچ گونه تاخیر بیشتر ، بیایید شروع کنیم!

مرحله 1: جمع آوری تمام قطعات

جمع آوری تمام قسمت ها
جمع آوری تمام قسمت ها

ساختار اصلی شامل یک آردوینو نانو است که هسته اصلی این پروژه است. شما می توانید از انواع دیگر Arduino مانند Arduino Uno محبوب ، Arduino Pro Mini ، Arduino Mega و غیره استفاده کنید. برای نمایش انیمیشن ها و تصاویر ، تصمیم گرفتم از یک صفحه نمایش 0.96 اینچی OLED با وضوح 128 در 64 پیکسل استفاده کنم. این صفحه نمایش می تواند رابط کاربری آردوینو با پروتکل I2C باشد که فقط به دو سیم برای داده و ساعت نیاز دارد ، بنابراین تعداد اتصالات را کاهش داده و پروژه را فشرده تر می کند. برای پخش ملودی تم PUBG از یک زنگ 5 ولت استفاده کردم که پین مثبت را با پین دیجیتال 6 آردوینو وصل کرده و زمین را به زمین آردوینو می رساند.

اینها لیست قطعات مورد نیاز برای پروژه است:

  1. آردوینو نانو (یا هر برد آردوینو دیگر به انتخاب شما)
  2. ماژول صفحه نمایش OLED 0.96 اینچ
  3. زنگ 5 ولت
  4. سیم های بلوز
  5. تخته نان
  6. کابل برنامه نویسی آردوینو

مرحله 2: اتصال صفحه نمایش OLED

اتصال صفحه نمایش OLED
اتصال صفحه نمایش OLED
اتصال صفحه نمایش OLED
اتصال صفحه نمایش OLED
اتصال صفحه نمایش OLED
اتصال صفحه نمایش OLED

در مجموع 4 اتصال برای اتصال صفحه نمایش OLED از arduino مورد نیاز است:

Vcc 5V آردوینو

Gnd Gnd آردوینو

SDA A4 آردوینو

SCK A5 آردوینو

پین A4 و A5 آردوینو برای ورودی های آنالوگ چند منظوره و همچنین پین هایی برای ارتباط I2C عمل می کند. در اینجا ما از پین های پروتکل I2C برای ارتباط با ماژول صفحه نمایش استفاده کرده ایم.

پیوند کتابخانه Adafruit مورد استفاده در این پروژه:

مرحله 3: اتصال بوزر

اتصال زنگ
اتصال زنگ
اتصال زنگ
اتصال زنگ

زنگ 5 ولت دارای ترمینال تغذیه مثبت و منفی است.

پین مثبت D6 آردوینو (پین دیجیتال 6) (می توانید از هر پین دیجیتالی آردوینو استفاده کنید)

پین منفی Gnd آردوینو

ما قصد داریم لحن دلخواه را روی پین دیجیتال D6 ایجاد کنیم که زنگ در آن ملودی را پخش می کند.

مرحله 4: تمام اتصالات سخت افزاری کامل شده است

تمام اتصالات سخت افزاری کامل است
تمام اتصالات سخت افزاری کامل است
تمام اتصالات سخت افزاری کامل است
تمام اتصالات سخت افزاری کامل است

تمام اتصالات لازم صفحه نمایش OLED و زنگ کامل است. حالا اجازه دهید جنبه برنامه نویسی پروژه را درک کنیم.

مرحله 5: شامل کتابخانه و راه اندازی پروتکل های نمایش

شامل کتابخانه و راه اندازی پروتکل های نمایش
شامل کتابخانه و راه اندازی پروتکل های نمایش

کل برنامه به 3 بخش تقسیم شده است:

  1. برنامه اصلی شامل راه اندازی اولیه و دنباله های نمایش تصویر و ملودی است
  2. فایل "pitches.h" شامل لیست نت های موسیقی و فرکانس مربوطه است
  3. فایل "pictures.h" شامل نقشه های بیتی از تصاویر است که باید نمایش داده شود.

فرآیند تبدیل تصویر به آرایه bitmap برای صفحه نمایش OLED در مراحل بعدی مورد بحث قرار می گیرد.

من همچنین کل کد را به همراه این دستورالعمل برای شما ضمیمه می کنم تا از آن استفاده کنید:)

مرحله 6: ملودی آهنگ تم

آهنگ تم ملودی
آهنگ تم ملودی
آهنگ تم ملودی
آهنگ تم ملودی

من در اینترنت به دنبال نت های اصلی که شامل آهنگ تم PUBG است ، گشتم و سپس آنها را به آرایه ملودی اضافه کردم.

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

مرحله 7: پخش آهنگ در هنگام راه اندازی

پخش آهنگ در هنگام راه اندازی
پخش آهنگ در هنگام راه اندازی

در مجموع 63 نت وجود دارد که من برای ساخت دنباله ملودی استفاده کردم. با استفاده از حلقه for و تکرار در میان نت ها و آرایه مدت زمان با وقفه ای از پیش تعیین شده بین هر نت ، کل دنباله یک بار پخش می شود ، زیرا این قطعه کد دروغ می گوید در تنظیمات خالی (). جالب اینجاست که هیچ کد از این پروژه از حلقه void () کد arduino استفاده نمی کند ، زیرا من قصد دارم فقط یک بار تصاویر را پخش و نمایش دهم. البته اگر دنباله ای تکراری می خواهید ، باید آن را در تابع () void loop قرار دهید.

مرحله 8: تبدیل تصاویر به Bitmaps

تبدیل تصاویر به Bitmaps
تبدیل تصاویر به Bitmaps

در حال حاضر ، بخش جالب پروژه فرایند تبدیل تصویر به آرایه bitmap برای صفحه نمایش OLED با توجه به تراکم پیکسلی آن است. برای این منظور ابزار آنلاین مقدماتی را پیدا کردم که به ما امکان می دهد نقشه های بیتی سفارشی تولید کنیم.

پیوند این برنامه آنلاین این است:

با تشکر از سازندگان شگفت انگیز این برنامه ، این کار من را بسیار آسان می کند.

پس از رفتن به پیوند ، ابتدا باید تصویری را که می خواهید bitmap آن ایجاد شود بارگذاری کنید. نکته ای که در اینجا باید به آن توجه کنید این است که باید سعی کنید تصاویری را انتخاب کنید که کنتراست رنگ زیادی در آن وجود ندارد ، سعی کنید به تصاویر با چند رنگ ثابت و بدون هیچ گونه شیب بچسبید تا نتایج بهتری بگیرید.

مرحله 9: تنظیم وضوح مطابق با صفحه نمایش شما

تنظیم وضوح با توجه به صفحه نمایش شما
تنظیم وضوح با توجه به صفحه نمایش شما

در مرحله بعد ، ما باید اندازه تصویر را با توجه به وضوح صفحه نمایش تغییر دهیم. برای صفحه نمایش OLED ما عرض 28 پیکسل و ارتفاع 64 پیکسل است که من آن را مطابق تصویر تنظیم کرده ام. برای اطمینان از وضوح تصویر ، آستانه روشنایی را تنظیم کنید (در اینجاست که مزیت استفاده از تصاویر با رنگهای ثابت نمایان می شود ، هرچه شیب رنگ بیشتر باشد ، کیفیت تصویر در صفحه نمایش تک رنگ با اختلال در آستانه روشنایی کاهش می یابد.)

گام بعدی این است که تصویر را روی صفحه قرار دهید تا نسبت ها دست نخورده باقی بماند و برای تقارن که گزینه های موجود در آن وجود دارد تنظیم شود. برای به دست آوردن خروجی تصویر دلخواه می توانید این گزینه ها را کاوش کنید. برای مرجع شما همچنین گزینه پیش نمایش شگفت انگیز را دریافت می کنید!

مرحله 10: ایجاد آرایه Bitmap

تولید آرایه Bitmap
تولید آرایه Bitmap

پس از تنظیم پارامترهای تصویر ، در مرحله بعد فقط کد آردوینو را به عنوان فرمت خروجی انتخاب کرده و روی generate کلیک کنید تا آرایه بیت مپ مورد نظر شما به دست آید!

آنجا! شما با موفقیت تصویر خود را به آرایه bitmap مورد نظر تبدیل کرده اید. من این پروسه را در مجموع 7 تصویر انجام داده و آنها را ذخیره کردم.

مرحله 11: نمایش تصاویر به صورت دنباله

نمایش تصاویر به صورت دنباله
نمایش تصاویر به صورت دنباله
نمایش تصاویر به صورت دنباله
نمایش تصاویر به صورت دنباله
نمایش تصاویر به صورت دنباله
نمایش تصاویر به صورت دنباله

برای نمایش تصاویر از تابع Arduino millis () برای فراخوانی تابع draw () استفاده کرده ام که اساساً مجموعه ای از دستورات برای پاک کردن صفحه است ، آرایه bitmap را به OLED رسم کرده و صفحه را اولیه کنید. منطق اصلی این است که بعد از هر 3.5 ثانیه ، تصویر تغییر کرده و تصویر بعدی نمایش داده می شود. خوب ، 3.5 ثانیه یک عدد منحصر به فرد نیست ، من تازه فهمیدم که اگر کل مدت ملودی را بر 7 تصویر تقسیم کنم ، برای هر صفحه نمایش تقریبا 3.5 ثانیه به دست می آورم. در صورت تمایل می توانید تصاویر بیشتری به این مورد اضافه کنید و زمان نمایش هر تصویر را کاهش دهید.

قطعه کد نحوه فراخوانی توابع بر اساس تابع millis () را توضیح می دهد.

کل آرایه های bitmap تصاویر در فایل "pictures.h" ذخیره می شوند

مرحله 12: کل کد:

در اینجا من کل کد را برای همه شما به اشتراک می گذارم تا بتوانید با آنها بازی کنید و آزمایش کنید!

وقتی همه چیز خوب به نظر می رسد وقت آن است که آن را روی صفحه بارگذاری کنید:)

مرحله 13: نتایج:

نتایج
نتایج
نتایج
نتایج
نتایج
نتایج
نتایج
نتایج

همانطور که می بینید تصاویر بسیار عالی بودند! و ملودی هم همینطور! امیدوارم ویدیویی را که در آن کل تظاهرات حضور دارد ، تماشا کرده باشید.

امیدوارم این نسخه Arduino از PUBG یک پروژه هیجان انگیز برای همه علاقه مندان به بازی و الکترونیک باشد.

لطفاً با خیال راحت نظرات خود را در نظرات به اشتراک بگذارید و هر گونه پیشنهاد را به اشتراک بگذارید. همچنین ، برای عضویت بیشتر در کانال من در نظر داشته باشید زیرا این بخشی از سری OLED است که روی آن کار می کنم. اگر این پروژه سرگرم کننده را ساختید به من اطلاع دهید:)

تا دفعه بعد.

توصیه شده: