2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Menga 8x8 LED matritsasi yordamida Arduino -da qo'llaniladigan klassik Pong o'yinining ko'p turlaridan ilhomlandim. Bu yo'riqnomada men sizga har bir o'yinchi uchun ikkita eshkakli - hujumchi va darvozabonli sevimli Pong versiyasini qanday qurishni ko'rsataman. 8x8 o'lchamli LED matritsasi juda cheklangan (yoki nuqta) joylarga ega bo'lgani uchun, men bu loyihaning o'rniga 8x16 LED matritsasidan foydalanaman. Oddiy simlarni ulash uchun men MAX7219 o'rnatilgan ikkita 8x8 LED matritsali va eshkaklarni boshqarish uchun bitta o'yinchiga bitta potentsiometrdan foydalanaman.
1 -qadam: materiallar
- Arduino Uno yoki unga tenglashtirilgan
- (2) MAX7219 bilan 8x8 LED matritsa
- (2) 10K potentsiometr
- o'tish simlari
- 9v batareya ushlagichi va 9v batareya
- korpus (Mening standart echimim har doim karton quti)
Asboblar: yopishtiruvchi qurol, pichoq
2 -qadam: Uskuna yig'ish
Uskuna yig'ish uchun mening video va simlar sxemasiga qarang.
3 -qadam: kod
Videoda ko'rsatilgan o'yin uchun men ishlatgan Arduino kodi biriktirilgan.
Ushbu loyiha uchun men LedControl nomli oddiy max7219 kutubxonasidan foydalanayapman. Agar sizda Arduino IDE -da bu kutubxona o'rnatilgan bo'lmasa, yuklab olish va o'rnatish uchun ularning veb -sahifasidagi ko'rsatmalarga amal qiling.
To'p harakatini kuzatish uchun men 5 o'zgaruvchidan foydalanaman. Agar men bir nechta to'p to'plashni xohlasam, bularning barchasini massivda saqlash yaxshiroq bo'lsa -da, bu loyiha o'rta maktab o'quvchilari uchun mo'ljallangan, shuning uchun men buni sodda tutaman.
O'yinchilarni joylashtirish uchun men 0 dan 1023 gacha bo'lgan qiymatlarni qaytaradigan va ularni Y koordinatasi uchun 0 dan 7 gacha bo'lgan qiymatlarga mos keladigan potentsiometrlarni o'qiyman.
Ushbu platformadan foydalanib, siz ilon, haydash, otish va otish kabi boshqa o'yinlarni kodlashingiz mumkin. Men bir vaqtning o'zida ikkita to'p bilan harakatlanadigan ikkita o'yinchi o'yini yozdim, lekin past piksellar sonidan va to'plar har doim 45 gradusda harakatlanayotganidan, men o'ylagandek yaxshi ishlamadi. (Agar siz google -ga kirsangiz, siz bitta o'yinchi o'yinchisini topishingiz mumkin.)