Mundarija:
Video: POING! - Arduino Arja o'yini!: 3 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Biz Elegoo Inc-ning "Eng to'liq boshlang'ich to'plami UNO R3 loyihasi" to'plamining qismlaridan foydalanadigan PONG uslubidagi arkada o'yinini quramiz.
To'liq oshkor qilish - Ushbu ko'rsatma uchun berilgan qismlarning aksariyati muallifga Elegoo Inc.
Men LED Matrix moduli yordamida loyiha qurmoqchi edim. Asosiy 8x8 LED displeyi matritsadagi individual LEDlarni hal qilish uchun qo'shimcha smenali registrlardan foydalanishni talab qiladi. Buning o'rniga, bu loyihada MAX7219 8x8 LED moduli ishlatiladi. Bu ishlatish uchun juda oson modul.
Men taklif qilardimki, ushbu loyihada ko'p sonli simli ulanishlar mavjud, bu O'RTA darajali ko'rsatmali hisoblanadi.
Qani boshladik!
Ta'minotlar
Ishlatiladigan Elegoo boshlang'ich to'plami qismlari (https://rebrand.ly/dvjb3w8)
- UNO R3 mikrokontroller
- MAX7219 8x8 LED moduli
- 16x2 LCD displeyli modul
- 10K trim potentsiometr va tugma
- Dupont Wires
- 220R qarshilik
- Passiv Piezo Buzzer
- Quvvat manbai moduli
- 9V 1A adapter - kerak, chunki UNO 8x8 LED moduli uchun etarli oqim bera olmaydi
- Non paneli
Qo'shimcha qismlar kerak
2 x 10K chiziqli potentsiometr - arzon va eBay, AliExpress, Banggood va boshqalarda keng tarqalgan.
1 -qadam: O'chirish simini ulash
O'chirish sxemasiga muvofiq sxemani simga ulang. Shoshilmang. Ikkala displey uchun juda ko'p ulanish kerak.
Sxemaning fotosuratiga e'tibor bering, quvvat moduli non panelining chap tomoniga ulangan va 9V 1A shahar adapteri quvvat moduliga ulangan, shuning uchun LED matritsasiga etarli oqim beriladi. Birlashgan Millatlar Tashkilotidagi 5V pin bilan non paneli o'rtasida hech qanday aloqa yo'q. LEKIN, UNOdagi GND pimi non panelidagi GND ga ulangan.
Ishingizni ikki va uch marta tekshiring.
2 -qadam: Arduino kodi
Bu ko'rsatma siz Arduino -da dasturlashni bilganingizni taxmin qiladi.
Qo'shilgan Arduino eskizini yuklab oling. LedControl kutubxonasini Arduino kutubxonalariga qo'shganingizga ishonch hosil qiling. Men Eberhard Fahle versiyasini ishlatganman. Kutubxonalarni boshqarish brauzerida MAX7219 ni qidiring va uni topib o'rnatasiz.
Pitches.h fayli eskiz papkasida ekanligiga ishonch hosil qiling. Bu o'yindagi tovushlarni ijro etish uchun ishlatiladi.
Vaqt haqida bir oz
Delay () buyrug'i eskizni bajarilishini to'liq to'xtatib qo'yganligi sababli, biz eskizning animatsiya bilan bog'liq qismlarini bajarishni xohlaganimizda, o'tgan vaqtlarni qidiramiz. Biz eskizning qismlarini bajarishdan oldin, masalan, displeyda to'pning joylashishini yangilash uchun oldindan belgilangan vaqtni qidiramiz.
Muhimi, delay () buyrug'i haqiqatan ham faqat loop () usulida bajariladi. Odatda u boshqa usullarda kutilganidek bajarilmaydi. Shunday qilib, animatsiya bilan bog'liq barcha vaqtlar loop () usulida amalga oshiriladi.
Misol:
Biz "uzun" turdagi o'zgaruvchilarni va bir nechta booleanlarni belgilaymiz va ularni sozlash oxirida o'rnatamiz ().
bThresh = 80; // to'p yangilanishlari orasidagi vaqt millisekundlarda
ballTime = millis (); // joriy tizim vaqtiga o'rnatilgan
bon = noto'g'ri; // - bu LEDning yonishi yoki o'chishi
ballReturn = noto'g'ri; // biz belkurak urilganidan keyin to'pni qaytarayapmizmi?
To'pni chizish uchun loopda () bizda:
if ((millis () - ballTime> bThresh) && bon == false) {// agar to'p o'chirilgan bo'lsa va etarli vaqt o'tgan bo'lsa ballOn (); // to'p LEDini yoqing
bon = haqiqiy; // to'p hozir yoqilgan
ballTime = millis (); // ballTime -ni hozirgi vaqtga qaytaring
}
if ((millis () - ballTime> bThresh) && bon == rost) {// agar to'p yoqilgan bo'lsa va etarli vaqt o'tgan bo'lsa
ballOff (); // to'p LEDini o'chiring
bon = noto'g'ri; // to'p endi o'chirilgan
ballTime = millis (); ballTIme -ni joriy vaqtga qaytaring
}
Ushbu o'yinni o'tkazishning ko'plab usullari mavjud. Bu faqat mening afzalliklarim.
Eskiz to'liq hujjatlashtirilgan, shuning uchun sizni qanday ishlashini ko'rish uchun kodni o'qishga taklif qilaman.
Kodni tekshiring, kompilyatsiya qiling va yuklang.
O'yin o'ynashdan rohatlaning!
3 -qadam: Xulosa
Ushbu loyihada ishlatiladigan boshlang'ich to'plamini taqdim etgani uchun Elegoo Inc kompaniyasiga rahmat aytaman. Bu sizni Arduino Maker dunyosiga yaxshi kirgizadigan turli xil qismlar va modullarga ega to'plam.
Tavsiya:
Bubble Bobble Arja shkafi (Bartop): 14 qadam (rasmlar bilan)
Bubble Bobble Arja shkafi (Bartop): Yana bir shkafni qurish bo'yicha qo'llanma? Xo'sh, men o'z kabinetimni, birinchi navbatda, Galaktik Starcade shablonidan foydalangan holda qurganman, lekin men ketayotib, bir nechta o'zgarishlarni amalga oshirdim va o'ylaymanki, ikkalasi ham yaxshilanadi. ba'zi qismlarni o'rnatish qulayligi va estetikasini yaxshilash
Retro Arja - (Raspberry Pi tomonidan ishlab chiqarilgan to'liq o'lchamli): 8 qadam
Retro Arja - (Raspberry Pi tomonidan ishlab chiqarilgan to'liq o'lchamli): Birinchidan, men ushbu Retro Arja tizimining qurilishi bo'yicha qo'llanmani ko'rib chiqqaningiz uchun rahmat aytmoqchiman. Men eski arja qutisini olib, uni 24 dyuymli keng ekranli avtonom shkafga joylashtiraman. Ushbu yo'riqnomadagi o'lchovlar sizga juda qiyin
Arja dinamikining ovoz balandligi adapteri: 3 qadam
Arja karnay ovoz balandligi adapteri: bu Arkadali karnay uchun ovoz balandligini boshqarish uchun Arkad tugmachasini o'rnatish moslamasi. Agar siz men kabi Bartop Arja mashinasini qurayotgan bo'lsangiz, sizga boshqa hech narsa kerak bo'lmaydi. birini olish vositasi
Mini Bartop Arja: 8 qadam (rasmlar bilan)
Mini Bartop Arja: Bu safar men sizga Picade Desktop Retro Arcade Machini -ga asoslangan Raspberry Pi Zero -dan foydalanib, eski vaqt arcade versiyasini ko'rsatmoqchiman: https: //howchoo.com/g/mji2odbmytj/picade -sharh-ra … Ushbu loyihaning maqsadi-retro yaratish
LED Arja o'yini siklon: 4 qadam
Siklonli LED Arja o'yini: Ushbu loyihaning maqsadi Arduino yordamida bolalar uchun interaktiv va ko'ngilochar o'yinni yaratish edi. Men eslayman, siklon arja o'yini yoshligimda eng sevimli arja o'yinlaridan biri edi, shuning uchun men uni takrorlashga qaror qildim. T