فهرست مطالب:

3 دلار جایگزین Makey Makey: 4 مرحله (همراه با تصاویر)
3 دلار جایگزین Makey Makey: 4 مرحله (همراه با تصاویر)

تصویری: 3 دلار جایگزین Makey Makey: 4 مرحله (همراه با تصاویر)

تصویری: 3 دلار جایگزین Makey Makey: 4 مرحله (همراه با تصاویر)
تصویری: Феномен раздражённого аморала ► 13 Прохождение Red Dead Redemption 2 2024, نوامبر
Anonim
3 دلار جایگزین Makey Makey
3 دلار جایگزین Makey Makey
3 دلار جایگزین Makey Makey
3 دلار جایگزین Makey Makey

Makey Makey یک دستگاه کوچک عالی است که از یک صفحه کلید USB تقلید می کند و به شما امکان می دهد از هر چیزی تا حدودی رسانا (فویل آلومینیومی ، موز ، خمیر بازی و غیره) کلید بسازید ، که می تواند بعنوان کنترل کننده برای بازی ها و پروژه های آموزشی استفاده شود. به Makey Makey دو نکته منفی دارد: (1) هزینه و (2) نیاز به اتصال زمین.

این پروژه با استفاده از برد 2 دلاری STM32F1 و سنجش خازنی ، جایگزینی ارزان است. در مقایسه با Makey Makey's 12 فقط 10 ورودی دارد ، اما این مزیت را دارد که علاوه بر شبیه سازی صفحه کلید ، می تواند از کنترل کننده USB گیم پد (جوی استیک دیجیتال) تقلید کند.

قطعات:

  • "قرص سیاه" تخته STM32F103c8 (1.90 دلار در Aliexpress ؛ اطلاعات بیشتر در اینجا)
  • تخته نان (کمتر از 1 دلار در Aliexpress) و سیم های جهنده ؛ یا فقط چند دسته دوپونت زن به مرد (0.70 دلار در Aliexpress برای بسته 40 تایی)
  • گیره کاغذ ، گیره تمساح و غیره

ابزارها:

  • کامپیوتر
  • آداپتور UART-to-USB برای برنامه نویسی اولیه برد (یک Arduino Uno یا Mega کار را انجام می دهند ، مانند یک واحد CH340 ارزان)
  • لحیم کاری برای لحیم کاری سرصفحه ها (می توانید بدون لحیم کاری از دسته گیره های آزمایشی استفاده کنید ، اما گاهی اوقات می افتند)

این نرم افزار یک طرح نمونه است که با کتابخانه ADCTouchSensor من موجود است و امکان سنجش خازنی را با یک پین روی برد STM32F1 برای هر سنسور (بر اساس کتابخانه martin2250 برای AVR) فراهم می کند.

هشدار: در هوای خشک یا جایی که وضعیت ایستایی مشکل دارد (به عنوان مثال ، روی فرش) ، به اتصالات فلزی در معرض دید دست نزنید ، زیرا باعث آسیب الکترواستاتیک به برد STM32F1 می شوید. من انتظار دارم که مقاومت سیب زمینی ، موز ، خمیر بازی و غیره به محافظت از تخته کمک کند ، اما اگر از فویل آلومینیومی برهنه استفاده می کنید ، ممکن است مشکلاتی داشته باشید. از سوی دیگر ، قیمت این تخته تنها 1.90 دلار است.

ایده های فعالیت آموزشی:

  • آزمایش کنید تا دریابید چه مواردی رسانا هستند و می توانند به عنوان سطوح کنترل استفاده شوند. (به عنوان مثال ، سرب مداد در مقابل مداد رنگی ؛ بازی خمیر در مقابل شمع.)
  • بازی های Scratch بنویسید که از کنترلر خانگی استفاده می کند.
  • کد آردوینو را تغییر دهید تا پروژه را قادر سازد تا کلیک/حرکت ماوس ، کلیدهای دیگر ، بیش از چهار جهت جوی استیک و غیره امکان پذیر باشد.

مرحله 1: Bootloader را بر روی برد توسعه نصب کنید

Bootloader را بر روی برد توسعه نصب کنید
Bootloader را بر روی برد توسعه نصب کنید
Bootloader را بر روی برد توسعه نصب کنید
Bootloader را بر روی برد توسعه نصب کنید
Bootloader را بر روی برد توسعه نصب کنید
Bootloader را بر روی برد توسعه نصب کنید

دو هدر سه پین را در وسط سیستم توسعه Black Pill (B0-/center/B0+؛ B1-/center/B1+) و سربرگ های بلند را در امتداد لبه ها (اگر عجله دارید یا می خواهید) بچسبانید برای جلوگیری از پین های غیر ضروری که ممکن است بچه ها را گیج کنند ، فقط به پین های A0-A10 و G نیاز دارید).

شما به یک پل UART به USB نیاز دارید که با دستگاه های 3.3 ولت سازگار باشد. شما می توانید ch340 را از Aliexpress با قیمت 0.66 دلار سفارش دهید ، اما من Arduino Mega knockoff را نشسته بودم و یک ترفند جالب در اینترنت پیدا کردم. اگر با یک آردوینو پین تنظیم مجدد را با سیم کوتاه به زمین کوتاه می کنید ، آن را به یک پل UART به USB تبدیل می کنید-نیازی به طرح ندارد. تنها ترفند این است که برچسب گذاری RX و TX معکوس می شود: پین Arduino "RX" منتقل می شود و پین "TX" آن دریافت می کند. آردوینو با ولتاژ 5 ولت و بلک پیل با 3.3 ولت کار می کند ، اما پین های PA9 و PA10 در stm32f103 مطابق با 5 ولت تحمل می کنند ، بنابراین نباید مشکلی ایجاد کند.

در هدرهایی که لحیم کرده اید ، یک بلوز از B0+ به مرکز و از B1- به مرکز قرار دهید.

اتصالات زیر را ایجاد کنید:

  • PA9 به UART پل RX ("TX" اگر از ترفند آردوینو استفاده می کنید)
  • PA10 به UART پل TX ("RX" اگر از ترفند آردوینو استفاده می کنید)
  • G به UART زمین پل

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

فایل باینری bootloader را بارگیری کنید. شما می خواهید generic_boot20_pb12.bin.

در Windows ، Flash Loader Demonstrator ST را نصب کنید. در لینوکس (و شاید OS X و حتی Windows اگر ابزارهای خط فرمان را ترجیح می دهید) ، به جای آن از این اسکریپت پایتون استفاده کنید ، اما دستورالعمل های من برای ویندوز خواهد بود. پل UART خود را به رایانه خود وصل کنید.

قرص سیاه را از طریق پورت USB آن روشن کنید (اگر از رایانه استفاده می کنید ، احتمالاً از دستگاه USB ناشناس شکایت می کند ؛ آن را نادیده بگیرید). Flash Loader Demonstrator را راه اندازی کنید. پورت COM را برای پل UART خود انتخاب کنید. در صورت وجود ، "حذف حفاظت" را انتخاب کنید. نسخه فلش را به جای 128 کیلوبایت ، 64 کیلوبایت انتخاب کنید. و فایل باینری bootloader را بارگذاری کنید.

همه چیز را خاموش کنید و سپس بلوز را از B0+/center به B0-/center منتقل کنید. شما اکنون یک بوت لودر دارید که می توانید با Arduino IDE از آن استفاده کنید.

مرحله 2: Arduino IDE را راه اندازی کنید

Arduino IDE را راه اندازی کنید
Arduino IDE را راه اندازی کنید

من فرض می کنم شما آخرین Arduino IDE را نصب کرده اید.

در ابزار | تخته | مدیران بردها ، پشتیبانی از Arduino Zero را نصب کنید (فقط Zero را در جستجو قرار دهید ، روی ورودی پیدا شده کلیک کنید و سپس نصب کنید). بله ، شما با Zero کار نمی کنید ، اما با این کار کامپایلر gcc مناسب نصب می شود.

بعد ، هسته stm32duino را بارگیری کنید. در ویندوز ، من توصیه می کنم فایل zip را بارگیری کنید ، زیرا وقتی فایلها را بررسی کردم (مسلماً با svn) ، برخی مشکلات مربوط به مجوزهای مربوط به فایلهای موجود در فهرست ابزارهای Windows را داشتم که نیاز به تعمیر داشتند. شاخه را در Arduino/Hardware/Arduino_STM32 قرار دهید (بنابراین پوشه هایی مانند Arduino/Hardware/Arduino_STM32/STM32F1 و غیره خواهید داشت) در Windows ، رانندگان را با اجرای drivers / win / install_drivers.bat نصب کنید.

مرحله 3: CapacitiveController Sketch را نصب کنید

CapacitiveController Sketch را نصب کنید
CapacitiveController Sketch را نصب کنید
CapacitiveController Sketch را نصب کنید
CapacitiveController Sketch را نصب کنید
CapacitiveController Sketch را نصب کنید
CapacitiveController Sketch را نصب کنید

در Arduino IDE ، Sketch | را انتخاب کنید شامل کتابخانه | مدیریت کتابخانه ها "ADCTouchSensor" را جستجو کرده و نسخه 0.0.6 یا جدیدتر را نصب کنید. "USBHID" را تکرار و جستجو کنید و کتابخانه USBHID_stm32f1 من را نصب کنید.

File | را انتخاب کنید مثال | ADCTouchSensor | CapacitiveController.

مطمئن شوید که تنظیمات زیر را در قسمت Tools دارید:

  • برد: Generic STM32F103C8
  • روش بارگذاری: STM32duino Bootloader

برد را به کامپیوتر وصل کرده و روی دکمه "بارگذاری" پیکان راست کلیک کنید. ممکن است لازم باشد هنگامی که پیام بارگذاری در کنسول ظاهر می شود ، برد را بازنشانی کنید (دکمه بازنشانی را روی آن فشار دهید).

مرحله 4: اتصالات و دکمه ها

اتصالات و دکمه ها
اتصالات و دکمه ها
اتصالات و دکمه ها
اتصالات و دکمه ها
اتصالات و دکمه ها
اتصالات و دکمه ها

با قطع شدن دستگاه ، سیم ها را از پایه های STM32F1 به سطوح کنترل خود منتقل کنید. با گیره تمساح ، گیره کاغذ یا فقط با چسباندن بلوز به اشیا متصل شوید. می توانید از تخته نان یا جهنده زن به مرد استفاده کنید. برای Tetris در رایانه ، از حالت صفحه کلید و کلیدهای جهت دار استفاده کردیم. برای Pac Man در رایانه لوحی ، از کابل USB OTG و حالت جوی استیک استفاده کردیم.

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

اکثر برنامه های اینجا کار می کنند ، و بسیاری دیگر. همچنین می توانید ببینید چند پروژه Makey Makey را می توانید تطبیق دهید.

برخی از سطوح کنترل خوب:

  • میوه ها و سبزیجات
  • خمیر بازی
  • فویل آلومینیومی (به جز در شرایط استاتیک بالا)
  • دکمه ها/اتصالات روی کاغذ به شدت مداد (خطوط اتصال نباید خیلی طولانی باشند-در عکس ، پایین ترین دکمه کار نمی کند)
  • آزمایش با بسیاری دیگر! (همچنین می توانید سعی کنید خط 25 را در if (sensors -> read ()> 25) در کد منبع برای برخی سطوح تغییر دهید)

اتصالات حالت صفحه کلید:

  • A10 را قطع کنید
  • A0: فضا
  • A1: بالا
  • A2: سمت چپ
  • A3: پایین
  • A4: درست است
  • A5: w
  • A6: a
  • A7: s
  • B0: د
  • B1: f

اتصالات حالت Gamepad/Joystick:

  • برای تنظیم حالت جوی استیک ، A10 را به Ground (G) وصل کنید
  • A0: دکمه 1
  • A1: بالا
  • A2: سمت چپ
  • A3: پایین
  • A4: درست است
  • A5-A7 ، B0 ، B1: دکمه های 2-6

نکته:

اگر از پرش کننده های زن به زن استفاده می کنید ، می توانید حالت زمین جوی استیک A10-زمین را با قرار دادن انتهای نر دو جامپر در یکدیگر انجام دهید و در نتیجه یک جهنده زن به زن ایجاد کنید.

توصیه شده: