آموزش ساخت بازی منچ با ESP32 و کد آردوینو

محتویات
منچ یکی از بازی های محبوب است که در کودکی همه ما را گرد هم می آورد. این بازی ساده و در عین حال جذاب است که ساعت های زیادی ما را مشغول میکرد. با گذشت زمان بچه ها اکنون دیگر به بازی های رو میزی و تخته ای علاقه مند نیستند و ترجیح میدهند حتی منچ را در گوشی خود بازی کنند.
در این آموزش میخواهیم یک تخته منچ هوشمند با استفاده از ESP32 و کد آردوینو بسازیم که بسیار جذاب تر است.
ویژگی های این بازی منچ
- SoC قدرتمند ESP32-S3: کنترلر اصلی مجهز به 16 مگابایت فلش و 8 مگابایت PSRAM، گیم پلی روان و برنامه نویسی آسان را تضمین می کند.
- 88 ال ای دی RGB آدرس پذیر: LED های SK6812MINI-E با نصب معکوس، جلوه های نور پر جنب و جوشی را برای نشان دادن موقعیت نشانه ها ارائه می دهند.
- سیستم ورودی مبتنی بر لمس: کاربران میتوانند از پدهای لمسی آنبورد برای انجام بازی استفاده کنند.
- صفحه نمایش IPS LCD: یک IPS LCD گرد 1.28 اینچی در مرکز صفحه نمایش وضعیت بازی و تاس مجازی را نشان می دهد.
- اثبات تقلب: تولید اعداد تصادفی مورد استفاده برای تاس مجازی تضمین میکند که تاسها واقعا تصادفی هستند.
- منبع باز: برای شما آسان است که آن را مطابق با نیاز خود تغییر دهید.
شماتیک مدار تخته منچ دیجیتال
مدار این بازی در تصاویر زیر نشان داده است. تصویر کامل با وضوح بالا در فایل دانلودی انتهای صفحه قرار داده شده است.
قطعات مورد نیاز
در اینجا لیستی از اجزای مورد نیاز برای ساخت برد دیجیتال منچ وجود دارد.
- ESP32-S3-WROOM-1-N16R8
- صفحه نمایش WaveShare 1.28 اینچی گرد IPS با وضوح 240×240 پیکسل
- 88 عدد * LED های RGB آدرس پذیر SK6812MINI-E
- IP5306 مدیریت انرژی SoC
- 2 عدد * 74HC595 شیفت رجیستر
- MIC5219-3.3 LD
- سوئیچ ها و کانکتورها
بیایید برای درک آسان تر، بخش به بخش مدار ها را مورد بحث قرار دهیم. ابتدا بخش برق را داریم. همانطور که در تصویر زیر می بینید بخش پاور نسبتاً ساده است و فقط از اجزای بسیار کمی استفاده می کند. پورت USB نوع C نه تنها برای تغذیه، بلکه برای برنامهریزی تراشه ESP32-S3 داخلی نیز استفاده میشود. سپس ورودی 5 ولت از پورت USB به تراشه مدیریت انرژی IP5306 متصل می شود. کنترلر مدیریت انرژی IP5306 نه تنها باتری داخلی را شارژ می کند، بلکه به عنوان یک کنترل کننده مسیر برق نیز عمل می کند و خروجی پایدار 5 ولت را هنگامی که از پورت USB تغذیه می شود یا زمانی که مستقیماً از باتری تغذیه می شود، می تواند تا 3 آمپر جریان را تامین کند. ما تعداد زیادی LED برای کنترل داریم. 4 عدد LED برای نشان دادن وضعیت شارژ باتری داخلی وجود دارد. برای روشن کردن تراشه میتوانیم از دکمه لمسی ارائه شده استفاده کنیم که به پایه پنجم IP5306 متصل است. ما از این ویژگی برای خاموش کردن خودکار برد منچ استفاده کرده ایم تا در صورت عدم تعامل کاربر به مدت 15 دقیقه، در مصرف برق صرفه جویی شود.
در بخش بعدی، خود SoC ESP32-S3 را داریم. ما نوع 16 مگابایتی را با 8 مگابایت یا PSRAM انتخاب کردهایم زیرا با کارهای گرافیکی زیادی سروکار داریم و فضای ذخیرهسازی و رم اضافی برای تطبیق با این موارد ضروری است. ما از یک ماژول نمایشگر گرد 1.28 اینچی IPS از Waveshare استفاده کردهایم زیرا از نظر زیبایی شناختی برای طراحی ما مناسب است. صفحه نمایش از طریق رابط HSPI با ESP32 ارتباط دارد. همچنین می توانید دو رجیستر شیفت 74HC595 را در شماتیک ها مشاهده کنید. ما از آنها به همراه 7 پین ورودی ADC ESP32 برای تشخیص ورودی های لمسی استفاده می کنیم. تشخیص لمسی از همان منطق صفحه کلید ماتریسی استفاده می کند.
در مرحله بعد، LED ها و تاچ پدهای RGB آدرس پذیر را داریم. برای سهولت ترسیم شماتیک ها و قرار دادن قطعات، نمادهای شماتیک سفارشی را برای LED ها ایجاد کرده ایم. در نماد سفارشی جدید، پینهای 1-4 نشاندهنده پایه های RGB LED هستند در حالی که پینهای 5 و 6 نشاندهنده پدهای لمسی هستند. از آنجایی که LED ها از نوع قابل نصب معکوس هستند، LED ها در پشت برد با برش های دقیق در PCB قرار می گیرند تا آنها را در خود جای دهد. پد لمسی در سمت بالای PCB قرار خواهد گرفت. LED ها به صورت سری با داده های پین اولین LED متصل به GPIO16 ESP32 متصل می شوند.
طراحی PCB برد بازی منچ با ESP32
برای این پروژه، ما تصمیم گرفتیم یک PCB چند رنگ سفارشی بسازیم. این تضمین می کند که محصول نهایی تا حد امکان جمع و جور باشد و همچنین جمع آوری و استفاده آسان باشد. تمام فایل های PCB مورد نیاز در فایل دانلودی انتهای صفحه قرار داده شده است.
در اینجا لایه های بالا و پایین PCB آمده است.
و در اینجا نمای سه بعدی بالا و پایین PCB است.
در اینجا یک نمای سه بعدی دیگر از PCB با نمایشگر نصب شده است.
برای مونتاژ PCB ها، اولین قدمی که انجام دادیم این است که همه اجزای مورد نیاز را طبق BOM مرتب کنیم. پس از اتمام کار، آنها را روی PCB قرار داده و آنها را یکی یکی لحیم کرده ایم.
قطعات پرینت سه بعدی
ما یک محفظه با پرینت سه بعدی برای برد منچ طراحی کردهایم تا در حین اجرای بازی ایمن و راحتتر کار شود.
فایل های تمام قطعات پرینت سه بعدی را می توانید در فایل دانلودی انتهای صفحه پیدا کنید.
از آنجایی که محفظه کمی بزرگتر است و در حجم ساخت چاپگر سه بعدی من قرار نمی گیرد. من محفظه را به دو قسمت تقسیم کردم و سپس آنها را چاپ کردم. این دو قسمت روی لبههای PCB لغزنده و با چند پیچ محکم میشوند.
موارد موجود در فایل : سورس کامل، فایل های PCB، تصاویر، فایل های پرینت سه بعدی
برای دانلود فایل ها باید حساب کاربری داشته باشید ثبت نام / ورود