فهرست مطالب:

4 بازی دکمه با استفاده از یک ورودی آنالوگ: 6 مرحله (همراه با تصاویر)
4 بازی دکمه با استفاده از یک ورودی آنالوگ: 6 مرحله (همراه با تصاویر)

تصویری: 4 بازی دکمه با استفاده از یک ورودی آنالوگ: 6 مرحله (همراه با تصاویر)

تصویری: 4 بازی دکمه با استفاده از یک ورودی آنالوگ: 6 مرحله (همراه با تصاویر)
تصویری: گرونی باعث عشق میشه😅#shorts 2024, جولای
Anonim
Image
Image

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

و برای برجسته کردن استفاده از این دکمه ها ، نرم افزاری برای اجرای چهار بازی مختلف با 4 دکمه وجود دارد. همه بازی ها (در مجموع 8 بازی) در اینجا از صفحه نمایش نردبان Led استفاده می کنند (به پروژه قبلی مراجعه کنید: دستورالعمل ها: Single-Line-LED-Display-Games).

می توانید از مجموعه 4 دکمه خود با سایر خروجی های صفحه نمایش استفاده کنید ، به سادگی از عملکرد "scanButtons ()" یکی از طرح های موجود استفاده کنید. و از این طرحها برای مثال استفاده از آنها استفاده کنید.

بازی ها یک بازی مهارتی هستند: Whack-a-Mole ، یک بازی حافظه: سیمون می گوید ، بازی های منطقی Sea Hunt و Flip'd یک بازی دو نفره شبیه به Reveri است. بعداً ، در این دستورالعمل ، بعداً چهار بازی دو نفره سر به سر معرفی می کنم.

مرحله 1: تعیین پیکربندی دکمه بهینه

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

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

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

با تمایل به اتصال چهار دکمه به یک ورودی آنالوگ که در آن فشار هر دکمه بدون توجه به وضعیت دکمه های دیگر قابل تشخیص است ، چندین پیکربندی را در یک صفحه گسترده مدل کردم. دریافتم که پیکربندی double-Y (شامل 2 مجموعه سه مقاومت) بهترین امکانات را ارائه می دهد. نمودار شماتیک سیم کشی را در زیر مشاهده کنید. من آنها را بر اساس بیشترین فاصله کل مقاومت بین هر دو ترکیب دکمه های فشرده ارزیابی می کردم. من مقادیر آنالوگ محاسبه شده را نیز مدل کردم. به فایل صفحه گسترده زیر مراجعه کنید.

برای تعیین بهترین مقادیر برای استفاده در پیکربندی های بالا ، من یک شبیه سازی نوشتم ، که تمام جایگزینی های احتمالی مقادیر مقاومت بالقوه را به طور کامل امتحان کرد و مجموعه ای را پیدا کرد که حداقل اختلاف بین ورودی های خواندن ممکن را ایجاد می کند. من کدی را که استفاده کردم ارائه کرده ام. این یک ابزار بی رحم بود که من با هم جمع کردم ، آنچه را که می خواستم به دست آوردم و کنار گذاشتم ، بنابراین به هیچ وجه بهینه نشده بود. این فقط به عنوان مرجع تاریخی است (Solve_4R.html زیر).

در اینجا خروجی آن برای بررسی است:

R1: 10 R2: 12 R3: 10 R4: 12 R5: 10 R6: 15 دقیقه R دلتا: 3.3658818125

R1: 10 R2: 12 R3: 10 R4: 12 R5: 10 R6: 18 دقیقه R دلتا: 4.9490620031 R1: 10 R2: 12 R3: 10 R4: 12 R5: 18 R6: 10 دقیقه R دلتا: 4.9490620031 R1: 10 R2: 12 R3: 10 R4: 15 R5: 10 R6: 33 دقیقه R دلتا: 5.0576510475 R1: 10 R2: 12 R3: 10 R4: 15 R5: 12 R6: 10 دقیقه R دلتا: 7.104826870 R1: 10 R2: 12 R3: 10 R4: 18 R5: 10 R6: 18 دقیقه R دلتا: 8.1673424912 R1: 10 R2: 12 R3: 10 R4: 18 R5: 15 R6: 22 دقیقه R دلتا: 8.6504939648 R1: 10 R2: 12 R3: 10 R4: 22 R5: 10 R6: 18 minR دلتا: 10.1721492515 R1: 10 R2: 12 R3: 10 R4: 22 R5: 10 R6: 22 دقیقهR دلتا: 10.5040000560 R1: 10 R2: 12 R3: 10 R4: 27 R5: 12 R6: 27 دقیقه R دلتا: 10.7814361579 R1: 10 R2: 12 R3: 12 R4: 33 R5: 15 R6: 36 دقیقه R دلتا: 10.8827552754 R1: 10 R2: 12 R3: 12 R4: 68 R5: 10 R6: 22 دقیقه 12 R4: 68 R5: 10 R6: 27 دقیقه R دلتا: 12.0961591599 R1: 10 R2: 12 R3: 15 R4: 68 R5: 10 R6: 27 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 15 R4: 75 R5: 10 R6: 27 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 15 R4: 82 R5: 10 R6: 27 دقیقه R دلتا: 1 2.7992171382 R1: 10 R2: 12 R3: 15 R4: 91 R5: 10 R6: 27 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 27 R4: 82 R5: 10 R6: 15 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 27 R4: 91 R5: 10 R6: 15 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 27 R4: 100 R5: 10 R6: 15 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 68 R4: 15 R5: 10 R6: 27 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 75 R4: 15 R5: 10 R6: 27 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 82 R4: 15 R5: 10 R6: 27 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 82 R4: 27 R5: 10 R6: 15 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 91 R4: 15 R5: 10 R6: 27 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 91 R4: 27 R5: 10 R6: 15 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 12 R3: 100 R4: 27 R5: 10 R6: 15 دقیقه R دلتا: 12.7992171382 R1: 10 R2: 15 R3: 10 R4: 18 R5: 18 R6: 12 دقیقه R دلتا: 13.2909379968 R1: 10 R2: 15 R3: 10 R4: 22 R5: 12 R6: 10 دقیقه R دلتا: 14.245362837 R1: 10 R2: 15 R3: 10 R4: 39 R5: 18 R6: 27 دقیقه R دلتا: 14.5126340326 R1: 10 R2: 15 R3: 10 R4: 56 R5: 12 R6: 15 دقیقه R دلتا: 15.220571553 R1: 10 R2: 15 R3: 12 R4: 27 R5: 12 R6: 12 دقیقه R دلتا: 18.8228671943 R1: 10 R2: 15 R3: 12 R4: 39 R5: 18 R6: 27 دقیقهR دلتا: 19.236186493 R1: 10 R2: 15 R3: 15 R4: 47 R5: 22 R6: 33 دقیقه R دلتا: 19.5685736556 R1: 10 R2: 15 R3: 22 R4: 56 R5: 22 R6: 27 دقیقه R دلتا: 19.7887024012 R1: 10 R2: 15 R3: 27 R4: 220 R5: 12 R6: 10 دقیقه R دلتا: 21.2533513149 R1: 10 R2: 15 R3: 220 R4: 27 R5: 12 R6: 10 دقیقه R دلتا: 21.2533513149 R1: 10 R2: 18 R3: 22 R4: 68 R5: 33 R6: 39 دقیقه R دلتا: 21.58566448 R1: 10 R2: 18 R3: 27 R4: 75 R5: 33 R6: 36 دقیقه R دلتا: 22.158443806 R1: 10 R2: 18 R3: 27 R4: 82 R5: 33 R6: دلتا 36 دقیقه R: 22.158443806 R1: 10 R2: 18 R3: 27 R4: 82 R5: 33 R6: 39 دقیقه: 10 R2: 18 R3: 75 R4: 33 R5: 27 R6: 18 دقیقه R دلتا: 24.2578084248 R1: 10 R2: 36 R3: 36 R4: 68 R5: 12 R6: 18 دقیقه: 36 R4: 75 R5: 12 R6: 18 دقیقه R دلتا: 24.380952380 R1: 10 R2: 36 R3: 39 R4: 75 R5: 12 R6: 15 دقیقه R دلتا: 24.380952380 R1: 10 R2: 36 R3: 68 R4: 36 R5: 12 R6: 18 دقیقه R دلتا: 24.380952380 R1: 10 R2: 36 R3: 75 R4: 36 R5: 12 Rta: 24.380952380 R1: 10 R2: 36 R3: 75 R4: 39 R5: 12 R6: 15 دقیقه 24.4674161824 R1: 10 R2: 39 R3: 22 R4: 47 R5: 10 R6: 22 دقیقه R دلتا: 24.4674161824 R1: 10 R2: 39 R3: 22 R4: 56 R5: 10 R6: 22 دقیقه 39 R3: 27 R4: 56 R5: 10 R6: 15 دقیقه R دلتا: 24.4674161824 R1: 10 R2: 39 R3: 39 R4: 15 R5: 10 R6: 27 دقیقه R دلتا: 24.4674161824 R1: 10 R2: 39 R3: 47 R4: 22 R5: 10 R6: 22 دقیقه R دلتا: 24.4674161824 R1: 10 R2: 39 R3: 56 R4: 22 R5: 10 R6: 22 دقیقه دلتا 15 دقیقه R: 24.4674161824 R1: 12 R2: 39 R3: 33 R4: 75 R5: 15 R6: 39 دقیقه: 12 R2: 39 R3: 47 R4: 100 R5: 18 R6: 33 دقیقه R دلتا: 24.789976640 R1: 12 R2: 39 R3: 56 R4: 100 R5: 15 R6: 12 دقیقه R دلتا: 25.3564579616 R1: 12 R2: 39 R3: 100 R4: 56 R5: 15 R6: 12 دقیقه R دلتا: 25.3564579616 R1: 12 R2: 47 R3: 18 R4: 47 R5: 10 R6: 27 دقیقه R دلتا: 27.4996466431 R1: 12 R2: 47 R3: 22 R4: 56 R5: 10 R6: 22 دقیقه R دلتا: 27.4996466431 R1: 12 R2: 47 R3: 27 R4: 56 R5: 10 R6: 18 دقیقه R دلتا: 27.4996466431 R1: 12 R2: 47 R3: 47 R4: 18 R5: 10 R6: 27 دقیقه R دلتا: 27.4996466431 R1: 12 R2: 47 R3: 56 R4: 22 R5: 10 R6: 22 دقیقه 27.4996466431 R1: 12 R2: 47 R3: 56 R4: 27 R5: 10 R6: 18 دقیقه R دلتا: 27.4996466431 R1: 15 R2: 56 R3: 22 R4: 56 R5: 10 R6: 27 دقیقه R دلتا: 29.1605253709 R1: 15 R2: 56 R3: 22 R4: 56 R5: 12 R6: 33 دقیقه R دلتا: 29.811354701 R1: 15 R2: 56 R3: 33 R4: 68 R5: 12 R6: 22 دقیقه R دلتا: 29.811354701 R1: 15 R2: 56 R3: 56 R4: 22 R5: 12 R6: 33 دقیقه R دلتا: 29.811354701 R1: 15 R2: 56 R3: 68 R4: 33 R5: 12 R6: 22 دقیقه R دلتا: 29.811354701 R1: 18 R2: 68 R3: 27 R4: 68 R5: 12 R6: 33 دقیقه R دلتا: 30.7487559507 R1: 18 R2: 68 R3: 33 R4: 68 R5: 12 R6: 27 دقیقه R دلتا: 30.8965517241 R1: 18 R2: 68 R3: 68 R4: 33 R5: 12 R6: 27 دقیقه R دلتا: 30.8965517241 R1: 18 R2: 75 R3: 27 R4: 68 R5: 12 R6: 36 دقیقه: 75 R3: 47 R4: 91 R5: 12 R6: 10 دقیقه R دلتا: 30.9007058823 R1: 18 R2: 75 R3: 68 R4: 27 R5: 12 R6: 36 دقیقه R دلتا: 30.9007058823 R1: 18 R2: 75 R3: 91 R4: 47 R5: 12 R6: 10 دقیقه R دلتا: 30.9007058823 R1: 22 R2: 82 R3: 36 R4: 82 R5: 15 R6: 39 دقیقه R دلتا: 33.2525545171 R1: 22 R2: 82 R3: 82 R4: 36 R5: 15 R6: 39 دقیقهR دلتا: 33.2525545171 R1: 36 R2: 82 R3: 22 R4: 82 R5: 39 R6: 15 دقیقهR دلتا: 33.2525545171 R1: 36 R2: 82 R3: 82 R4: 22 R5: 39 R6: 15 دقیقهR دلتا: 33.2525545171 R1: 82 R2: 22 R3: 36 R4: 82 R5: 15 R6: 39 دقیقه R دلتا: 33.2525545171 R1: 82 R2: 22 R3: 82 R4: 36 R5: 15 R6: 39 دقیقه R دلتا: 33.2525545171 R1: 82 R2: 36 R3: 22 R4: 82 R5: 39 R6: 15 دقیقه R دلتا: 33.2525545171 R1: 82 R2: 36 R3: 82 R4: 22 R5: 39 R6: 15 دقیقه R دلتا: 33.2525545171 R1: 36 R2: 82 R3: 82 R4: 22 R5: 39 R6: 15 دقیقه R دلتا: 33.2525545171

مرحله 2: مجموعه 4 دکمه من

مجموعه 4 دکمه من
مجموعه 4 دکمه من

برای چهار دکمه من از این دکمه ها و یک PCB و مقاومتهای سوراخ شده استفاده کردم که در نمودار بالا نشان داده شده است. نحوه اجرای فیزیکی چهار دکمه خود کاملاً باز است و به نیازهای پروژه شما بستگی دارد. تا زمانی که از نظر برق در نمودار بالا باشد. اطمینان حاصل کنید که نصب و راه اندازی شما به گونه ای است که با سیم کشی دکمه ها تماس نمی گیرید زیرا باعث قرائت می شود و منجر به رفتار اشتباه دکمه می شود.

من یک دکمه کوچک اضافه شده روی برد دارم که از آن مانند کلید "Function" استفاده می کنم. این سری با یک مقاومت 2 مگا اهم ، که به طور قابل توجهی دیگر خوانش ورودی من را از بین نمی برد. اگرچه فقط زمانی می توانم آن را فشار دهم که تشخیص داده شود. برای درک بیشتر نحوه استفاده از آن می توانید آن را نادیده بگیرید یا کد را بررسی کنید.

از طرح آزمایشی "Test_12Leds_6Btns" می توان برای آزمایش تشخیص فشارهای دکمه (ها) توسط MCU و مجموعه دکمه واقعی استفاده کرد. قرار است خروجی آن یا با نردبان LED یا مانیتور سریال مشاهده شود. به راحتی می توان آن را از طریق هر نوع نمایشگری که دارید به خروجی تغییر داد.

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

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

"راننده" نرم افزاری که به این دکمه ها سرویس می دهد ، "scanButtons ()" معمول است. منتظر می ماند تا مقدار ورودی آنالوگ تنظیم شود و سپس خواندن را به مجموعه ای از مقادیر از پیش تعیین شده ترسیم می کند. و آن را به حالت مربوطه برای مجموعه دکمه ها ترجمه می کند. این روال معمول و متغیرهای عمومی که با نرم افزار برنامه به اشتراک می گذارد ، تنها چیزی است که برای استفاده مشابه از این مجموعه در دکمه های مستقل مورد نیاز است.

توجه داشته باشید! نسخه فعلی 'scanButtons ()' سعی نمی کند به طور منحصر به فرد تمام سه ترکیب دکمه ممکن را مشخص کند ، زیرا برای من واقعاً مورد نیاز نبود و کد و دقت کالیبراسیون مورد نیاز را پیچیده تر می کرد.

مرحله 3: بازی بازی

هر دو طرح ، "LadderGames4" یا "Head2head" را می توان در اکثر MCU های Arduino بارگذاری و اجرا کرد ، اما LadderGames4 باید دارای "SimonSays" یا هر دو بازی دیگر باشد تا بتواند در 8K بایت فضای برنامه متناسب باشد. an Attiny-85. صوت نیز مربوط به ATtiny-85 است ، به پروژه قبلی که در بالا ذکر شد مراجعه کنید. کد با کامپایل شرطی تنظیم شده است و شناخته شده است که با Nano ، Uno و ATtiny-85 کار می کند.

با هر یک از این طرح ها پس از راه اندازی اولیه ، منو با یک رنگ در هر زمان قرمز ، زرد ، سبز … آبی ، مطابق با چهار گزینه احتمالی بازی ارائه می شود. شما یا Btn1 را هنگامی که گزینه wish روشن است فشار دهید یا در هر زمان Btn2-4 را برای بازیهای 2-4 فشار دهید. روش مازاد بر انتخاب به گونه ای است که با برنامه های دو و چهار دکمه ای و بازی سازگار باشد. در صورت وجود چندین نسخه برای بازی ، باید قرمز چشمک زن برای ver-1 ، زرد چشمک زن برای ver-2 و غیره را انتخاب کنید.

4 بازی دکمه ای

یک بازی حافظه ، یک بازی هماهنگی چشم و دست و دو بازی استراتژی.

سیمون می گوید این یک اجرای مجدد بازی از همان شکلی است که من در آن داشتم ، در این پروژه های قبلی:

www.instructables.com/id/Fast-Easy-Simon/

www.instructables.com/id/Improved-Simon-Says-Code/

این بازی مانند اکثر بازی های دیگر "Simon Says" بازی می کند.

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

ضربه زدن به خال

به مدت 30 ثانیه خال های مختلف (قرمز ، یل ، گرن ، آبی) 1 ، 2 یا 3 در یک زمان ظاهر می شوند. شما باید آنها را با فشار دادن دکمه های مربوطه Btn1-4 "ضربه محکم" کنید. فقط فشار یک دکمه پذیرفته می شود ، بدون فشار چند دکمه همزمان. مدت زمانی که یک مجموعه خال بیدار می ماند ، با ادامه بازی کوتاه می شود. اگر تمام خال های خود را نشان دهید ، مجموعه جدیدی ظاهر می شود. به این ترتیب که شما سریعتر خال های بیشتری دارید شانس ضربه زدن به آنها را خواهید داشت.

پس از اتمام بازی ، نمایشگر نمره را منعکس می کند و برای هر 10 خال ضربه خورده یک عدد led روشن می شود. از آنجایی که بازی برای هر ضربه محکم و ناگهانی 10 امتیاز می گیرد ، 5 عدد led نشان دهنده نمره استاندارد Whac-a-Mole 500+ است. برای انجام یک دور دیگر ، باید بازی را دوباره انتخاب کنید.

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

نمره معمولی من با استفاده از یک انگشت در 500s است ، با استفاده از 4 انگشت (یک در هر دکمه) 600+ است. بالاترین نمره من 700+ است. استفاده از چند انگشت به ویژه در این مورد مشکل است که اگر در فشار دادن یکی و دیگری همپوشانی وجود داشته باشد ، دومی توسط نرم افزار پذیرفته نمی شود ، بنابراین شما باید همه دکمه ها را قبل از پذیرش یکی دیگر رها کنید. اگر کسی همه 12 led را برای امتیاز 1200+ روشن کرد ، لطفاً به ما اطلاع دهید.

شکار دریایی

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

برای حرکت مکان نما به جایی که می خواهید شناور سونار را رها کنید یا عمق شارژ با Btn2 & Btn3 برای چپ و راست انجام می شود. Button-1 برای راه اندازی آنها استفاده می شود.

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

در نسخه 2 ، سر به سر ، به نوبت ، می بینید که چه کسی موفق به غرق شدن فرعی می شود. پلیر 1 از Btn1 و بازیکن دوم از Btn4 برای راه اندازی بارهای عمیق خود استفاده می کند.

در نسخه 3 ، گزارشات عمق بار و سونار به ترتیب توسط Btn1 و Btn4 به طور مستقل اجرا می شوند. شما فقط سه بار شارژ عمیق در اختیار دارید. می توانید تمام گزارش های سونار مورد نظر خود را دریافت کنید. اگر نتوانید او را با این اتهامات دریافت کنید ، ضرر می کنید.

در نسخه 4 زیر می تواند با سرعت 1-3 فاصله در هر والی حرکت کند و در غیر این صورت مانند نسخه 3 بازی می کند ، اما شما 6 بار عمق دریافت می کنید.

تاریخچه: من اولین بار در دهه 1970 بازی "شکار دریایی" را ایجاد کردم. سپس دستگاه ورودی و خروجی یک تله تایپ بود. با این حال ، دریا یک شبکه 2 بعدی بود ، برخلاف 1 بعدی که اینجا است.

توجه: من محدودیت شارژ عمیق را در کد توضیح دادم ، با این ایده که بازی برای اکثر مردم به اندازه کافی سخت بود.

تلنگر

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

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

تخته با مجموعه ای تصادفی از led ها شروع می شود. هنگامی که نوبت به نوازنده اول می رسد ، یک نوردهی سریع یا نوردهی در led در "مکان نما" ، نقطه مورد علاقه ، به طور بالقوه قابل چرخش است. در هنگام چرخش بازیکن شماره 2 ، یک فلاش طولانی از led به عنوان نشانگر مکان نما وجود دارد. اگر بازیکن اشتباه دکمه خود را فشار دهد ، خارج از نوبت ، یک بوق بسیار کوتاه وجود دارد. مکان نما توسط Btn2 و راست توسط Btn3 به چپ منتقل می شود. بازیکن بازنده بازی زیر را شروع می کند.

استراتژی در مورد اینکه چه چیزی باید تلنگر شود قابل توجه است.

مرحله 4: مسابقات سر به سر

دو دکمه / دو بازی بازیکن

در مجموعه اول 4 بازی دکمه ای فقط "Whack-a-Mole" واقعاً به استقلال کامل پردازش دکمه متکی است. من همچنین چهار بازی سر به سر اجرا کرده ام که همه آنها بستگی به تشخیص دکمه مستقل دارد. این بازی ها عبارتند از: Draw Quick ، Tug a War ، Chicken و Hot Hands (Slapsies).

قرعه کشی سریع (تست واکنش)

مسابقه با "آماده"/قرمز ، "مجموعه"/زرد و "قرعه کشی!"/سبز آغاز می شود. نسبتاً تصادفی است که چراغ سبز به شما نشان می دهد. اولین نفری که دکمه خود را می زند برنده می شود. خیلی زود ضربه می زنید و با یک سر و صدا بدنام می شوید.

بازیکن 1 از Btn1 (در سمت چپ) و بازیکن 2 از Btn4 (در سمت راست) استفاده می کند.

مسابقه طناب کشی

با "آماده" ، "تنظیم" … "GO!" شروع می شود. در وسط یک شیء ظاهر می شود ، "کمان" روی طناب. سپس بازیکنان تا جایی که می توانند سریع و اغلب دکمه های خود را می زنند. کمان به سمت بازیکنی با بیشترین ضربه حرکت می کند. هنگامی که کمان به یک سر می رسد ، برنده است.

جوجه

این مسابقه نیز به همین ترتیب آغاز می شود. بعد از صدا و فلاش سبز "برو!" بازیکنان دکمه های خود را فشار داده و نگه می دارند ، نورهایی (ارابه های آنها) از آنها به طرف دیگر حرکت می کنند. برنده کسی است که آخرین دکمه خود را رها می کند (از ارابه خارج می شود) ، درست قبل از برخورد دو پلک به یکدیگر. اگر شخصی خیلی دیر آزاد شود یا اصلاً رهایی ندهد ، تصادف کرده و می بازد. اگر هر دو دیر بپرند (آزاد شوند) هیچکس برنده نمی شود.

در ابتدا یک جفت led متضاد روی صفحه نمایش حرکت می کند ، در این زمان اگر Fnc-Btn2 را فشار دهید ، سرعت بازی افزایش می یابد. این را می توان چند بار تکرار کرد.

دستان داغ

نسخه دیجیتالی بازی سیلی دستی (معروف به Red-Hands یا Slapsies). برای شروع دو بازیکن دکمه های خود را با هم فشار دهید ، یک طرف رها می شود و سپس سعی می کند دکمه او را دو بار فشار دهد تا طرف دیگر بتواند دکمه او را آزاد کند. سپس طرف دیگر سعی می کند به طور مشابه عمل کند. بازیکنی که نوبت به او رسیده است در ابتدای دور با روشن شدن led های سمت او مشخص می شود. من دریافتم که یک دکمه تنها با فشار بسیار سریع و آسان است ، بنابراین من دو مورد ضروری را تنظیم کردم ، که نیاز به عمل و زمان بیشتری دارد ، مانند این که باید دست خود را روی دیگران بچرخانید و سپس به پایین ضربه بزنید. TBD: در نسخه دوم ، این برنامه برای همه رایگان است ، در هر زمان هر یک از بازیکنان می توانند بهترین بازی دیگری را بدست آورند.

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

با هشت بازی در اینجا و چهار بازی در پروژه قبلی من Single-Line-LED-Display-Games ، این نرم افزار را برای اجرای 12 بازی با این چهار سخت افزار ترکیبی + دکمه + نردبان در دسترس قرار می دهد.

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

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

اختیاری 2 کنترل کننده پخش
اختیاری 2 کنترل کننده پخش
اختیاری 2 کنترل کننده پخش
اختیاری 2 کنترل کننده پخش
اختیاری 2 کنترل کننده پخش
اختیاری 2 کنترل کننده پخش
اختیاری 2 کنترل کننده پخش
اختیاری 2 کنترل کننده پخش

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

قطعات دکمه نوع پیستون:

  • لوله 1/2 اینچی خط لوله ، آبپاش ایستاده ، یا PVC (فروشگاه سخت افزار)
  • دسته دسته دوچرخه (Walmart)
  • دکمه های بزرگ (eBay)
  • 2 مقاومت

برای حفظ سازگاری ، یک دکمه دارای مقاومت 75 اهم به صورت سری است و کلید دیگر دارای 36-39 اهم است. به طوری که نرم افزار آنها را به ترتیب Btn1 و Btn4 می بیند.

می توانید از لوله هایی که می گویند جارو دور ریخته شده یا دسته جارو برقی استفاده کنید.

حتی می توانید یک آداپتور بسازید که بتوانید استیک های کنسول بازی قدیمی را به آن متصل کنید. دکمه های آتش یکی به عنوان Btn1 و Btn4 برای دیگری سیم کشی شود ، در حالی که Btn1-4 را به دکمه های ناوبری چوب های شادی تقسیم کنید.

آوریل 2018: اکنون ترجیح می دهید از دکمه های فشرده سازی 5/8 به عنوان بدنه برای دکمه های سبک پیستونی خارجی استفاده کنید. دکمه های بزرگ (با نوار کوچک روی نخ های آنها اضافه شده است) کاملاً در آنها قرار می گیرد و بسیار زیبا در دست قرار می گیرند. بچه ها دوست دارند از یک جفت از این موارد استفاده کنند ، من چند سری پین هدر اضافه کردم تا بتوانم به راحتی یک دکمه خارجی دست را روی مخاطبین Bnt1 و یکی را برای Btn4 متصل کنم.

مرحله 6: به روز رسانی (ها)

به روز رسانی (ها)
به روز رسانی (ها)

من یک قاب کنسول چاپ سه بعدی برای قرار دادن صفحه نمایش نردبان و دکمه های LED درون خط ساختم.

من 12 بازی که تا به حال برای این نمایشگر LED 12 ایجاد کرده ام را در یک طرح "Menu_12Games" ترکیب کرده ام. این نرم افزار نیاز به سخت افزار این پروژه دارد که با MCU فلش 32KB (به عنوان مثال Nano یا Uno) و 5 دکمه ، 4 اصلی + FncKey اجرا می شود.

منوی انتخاب در حال حاضر دو طبقه است. ابتدا 1 از 4 گروه بازی را انتخاب کنید سپس بازی 1-4 را در آن گروه ، … همانطور که در زیر ذکر شده است. در حالی که منتظر نمایشگرهای منتخب به صورت دوره ای R-Y-G-B هستید ، Btn1-4 را به عنوان انتخاب خود در هر زمان فشار می دهید ، هیچ تفاوتی نمی کند که هنگام فشار دادن انتخاب خود چه چیزی نمایش داده می شود. در طول انتخاب گروهی ، همه Leds حداقل تا حدی در حین اسکن RYGB کاملاً محفوظ هستند. برای خروج از هر بازی یا پشتیبان گیری از انتخاب "بازی" به "گروه" FncKey-Btn1 را فشار دهید.

هنوز 4 مورد نهایی را کد نویسی کرده ام. 3 مورد را نوشته ام (از جمله "LeMans"). هنوز به این فکر نکرده ام که آخرین بازی چه خواهد بود. با هر ایده ای به من پیام دهید

به روز رسانی 25 ژانویه 17: برای شما که از دسترسی به چاپگر سه بعدی لذت می برید ، ممکن است به قاب کنسول بازی که برای دستگاه خود ساخته ام علاقه مند باشید: https://www.instructables.com/id/3D-Printed-Case- for-Inline-LED-Display-Console-and/

به روز رسانی 17 فوریه 17: من 4 بازی نهایی را اضافه کردم ، که اکنون به عنوان "Menu_16Games.ino" در بخش "مرحله 7: به روز رسانی ، بازی های بیشتر" بازی های آموزشی: Single-Line-LED-Display-Games (Menu_12Games.ino است الان منقضی شده)

بازی گروهی: 1– قرمز 2- زرد 3- سبز 4- آبی

1 قرمز PushIt PingPong ShootEmUp JumpMan 2 Yel QuickDraw Tug_a_War Chicken Hot_Hands 3 Grn Le_Mans Spray PIG BiFunc 4 Blu SimonSays Whack_Mole Sea_Hunt Flip_d

توصیه شده: