POING! - Arduino arcade játék!: 3 lépés
POING! - Arduino arcade játék!: 3 lépés
Anonim
Image
Image
POING! - Arduino arcade játék!
POING! - Arduino arcade játék!

Építeni fogunk egy PONG-stílusú ügyességi játékot, amely az Elegoo Inc. "A legteljesebb kezdő készlet UNO R3 Project" készletének részeit használja.

Teljes nyilvánosságra hozatal - Az útmutatóhoz szállított alkatrészek többségét az Elegoo Inc. biztosította a szerzőnek.

Építeni akartam egy projektet egy LED Matrix modul segítségével. Az alap 8x8 LED -es kijelző további műszakregiszterek használatát igényli, hogy képes legyen kezelni a mátrix egyes LED -jeit. Ehelyett ez a projekt a MAX7219 8x8 LED modult használja. Ez egy nagyon könnyen használható modul.

Azt javaslom, hogy a projekt nagyszámú huzalozási kapcsolata miatt INTERMEDIATE szintű Instructable -nek minősüljön.

Lássunk neki!

Kellékek

Használt Elegoo kezdő készlet alkatrészek (https://rebrand.ly/dvjb3w8)

  • UNO R3 mikrokontroller
  • MAX7219 8x8 LED modul
  • LCD 16x2 kijelző modul
  • 10K Trim potenciométer és gomb
  • Dupont vezetékek
  • 220R ellenállás
  • Passzív Piezo csengő
  • Tápegység modul
  • 9V 1A adapter - szükséges, mert az UNO nem tud elegendő áramot szolgáltatni a 8x8 LED -es modulhoz
  • Kenyeretábla

Extra alkatrészek szükségesek

2 x 10K lineáris potenciométer - olcsó és széles körben elérhető az eBay -n, az AliExpress -en, a Banggood -on stb.

1. lépés: Az áramkör bekötése

Az áramkör bekötése
Az áramkör bekötése

Csatlakoztassa az áramkört a kapcsolási rajz szerint. Nem kell kapkodni. SOK kapcsolat szükséges a két kijelzőhöz.

Figyelje meg az áramkör fotóján, hogy a tápegység a kenyértábla bal oldalához van csatlakoztatva, és a 9V 1A egyenáramú adapter a tápegységhez van csatlakoztatva, hogy elegendő áramot kapjon a LED mátrix. NINCS kapcsolat az UNO 5V -os csapja és a kenyérsütő lemez között. DE, az UNO GND csapja a kenyértáblán lévő GND -hez van csatlakoztatva.

Kétszer és háromszor ellenőrizze munkáját.

2. lépés: Arduino kód

Ez az útmutató azt feltételezi, hogy már tudja, hogyan kell programozni Arduino -ban.

Töltse le a mellékelt Arduino vázlatot. Győződjön meg róla, hogy hozzáadta a LedControl könyvtárhoz az Arduino könyvtárait. Eberhard Fahle verzióját használtam. Csak keressen rá a MAX7219 kifejezésre a Könyvtárak kezelése böngészőben, és megtalálja és telepíti.

Győződjön meg arról, hogy a pitches.h fájl a vázlat mappájában van. A játék hangjainak lejátszására szolgál.

Egy kicsit az időzítésről

Mivel a delay () parancs teljesen leállítja a vázlat végrehajtását futás közben, ehelyett az eltelt időtartamokat keressük, amikor a vázlat animációval kapcsolatos részeit szeretnénk végrehajtani. Előre meghatározott időt kell várnunk, mielőtt végrehajtjuk a vázlat egyes részeit, például frissítjük a labda helyét a kijelzőn.

Ennél is jelentősebb, hogy a delay () parancs valóban csak a loop () metódusban fut. Általában nem úgy működik, mint más módszereknél. Tehát minden animációval kapcsolatos időzítés a loop () metódusban történik.

Példa:

Meghatározunk néhány „hosszú” típusú változót és néhány logikai értéket, majd beállítjuk őket a beállítás végén ().

bThresh = 80; // a labdafrissítések közötti idő ezredmásodpercben

ballTime = millis (); // az aktuális rendszeridőre állítva

bon = hamis; // a golyó LED világít vagy nem világít

ballReturn = hamis; // visszaadunk -e labdát egy lapátütés után?

A () hurokban () a labda rajzolásához:

if ((millis () - ballTime> bThresh) && bon == false) {// ha a labda kikapcsolt állapotban van, és elég idő telt el ballOn (); // kapcsolja be a labda LED -ét

bon = igaz; // a labda most BE

ballTime = millis (); // a ballTime visszaállítása az aktuális időre

}

if ((millis () - ballTime> bThresh) && bon == true) {// ha a labda BE van kapcsolva és elég idő telt el

ballOff (); // kapcsolja ki a golyós LED -et

bon = hamis; // a labda most OFF

ballTime = millis (); állítsa vissza a labdát az aktuális időre

}

Ennek a játéknak számos módja van. Ezek csak az én preferenciáim.

A vázlat teljesen dokumentált, ezért arra kérem Önt, hogy olvassa el a kódot, és nézze meg, hogyan működik.

Ellenőrizze, fordítsa le és töltse fel a kódot.

Élvezze a játékot!

3. lépés: Következtetés

Következtetés
Következtetés
Következtetés
Következtetés

Köszönöm az Elegoo Inc -nek, hogy biztosította a projektben használt kezdő készletet. Ez egy olyan készlet, amely alkatrészek és modulok széles választékát kínálja, így bejuthat az Arduino Maker világába.

Ajánlott: