Turinys:
Video: POING! - „Arduino“arkadinis žaidimas!: 3 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
Mes kursime PONG stiliaus arkadinį žaidimą, kuriame bus naudojamos dalys iš „Elegoo Inc.
Visas atskleidimas - daugumą šiai instrukcijai pateiktų dalių autorei pateikė „Elegoo Inc.
Norėjau sukurti projektą naudojant LED matricos modulį. Pagrindiniam 8x8 LED ekranui reikia naudoti papildomus poslinkių registrus, kad būtų galima adresuoti atskirus matricos šviesos diodus. Vietoj to, šiame projekte naudojamas MAX7219 8x8 LED modulis. Tai labai paprasta naudoti modulis.
Aš siūlau, kad dėl didelio šio projekto laidų jungčių skaičiaus jis būtų laikomas INTERMEDIATE level Instructable.
Pradėkime!
Prekės
Naudotos „Elegoo“pradinio komplekto dalys (https://rebrand.ly/dvjb3w8)
- UNO R3 mikrovaldiklis
- MAX7219 8x8 LED modulis
- 16x2 skystųjų kristalų ekrano modulis
- 10K apdailos potenciometras ir rankenėlė
- Dupont laidai
- 220R rezistorius
- Pasyvus pjezo garsinis signalas
- Maitinimo blokas
- 9V 1A adapteris - reikalingas, nes UNO negali tiekti pakankamai srovės 8x8 LED moduliui
- Bandomoji Lenta
Reikalingos papildomos dalys
2 x 10K linijinis potenciometras - nebrangus ir plačiai prieinamas „eBay“, „AliExpress“, „Banggood“ir kt.
1 žingsnis: grandinės prijungimas
Prijunkite grandinę pagal elektros instaliacijos schemą. Neskubėk. Abiem ekranams reikia daug jungčių.
Atkreipkite dėmesį į grandinės nuotrauką, kad maitinimo modulis yra pritvirtintas kairėje duonos lentos pusėje, o 9V 1A DC adapteris yra prijungtas prie maitinimo modulio, kad į LED matricą būtų tiekiama pakankamai srovės. Nėra ryšio tarp 5V kaiščio UNO ir duonos lentos. BET, UNO GND kaištis yra prijungtas prie GND ant duonos lentos.
Dvigubai ir trigubai patikrinkite savo darbą.
2 žingsnis: „Arduino“kodas
Ši pamoka reiškia, kad jūs jau žinote, kaip programuoti „Arduino“.
Atsisiųskite pridėtą „Arduino“eskizą. Įsitikinkite, kad įtraukėte „LedControl“biblioteką į savo „Arduino“bibliotekas. Aš naudojau Eberhard Fahle versiją. Tiesiog ieškokite „MAX7219“naršyklėje „Valdyti bibliotekas“ir rasite ir įdiegsite.
Įsitikinkite, kad failas pitches.h yra eskizo aplanke. Jis naudojamas žaidimo garsams paleisti.
Šiek tiek apie laiką
Kadangi „delay“() komanda visiškai sustabdo eskizo vykdymą, kai jis vykdomas, mes ieškome prabėgusių laikotarpių, kai norime įvykdyti su animacija susijusias eskizo dalis. Prieš vykdydami eskizo dalis, pvz., Atnaujiname rutulio vietą ekrane, laukiame iš anksto nustatyto laiko.
Dar svarbiau, kad komanda delay () iš tikrųjų vykdoma tik naudojant ciklo () metodą. Paprastai jis neveikia taip, kaip tikėtasi naudojant kitus metodus. Taigi visas su animacija susijęs laikas atliekamas ciklo () metodu.
Pavyzdys:
Mes apibrėžiame kai kuriuos „ilgo“tipo kintamuosius ir keletą loginių verčių, o tada nustatome juos sąrankos pabaigoje ().
bThresh = 80; // laikas milisekundėmis tarp rutulio atnaujinimų
ballTime = milis (); // nustatyti dabartinį sistemos laiką
bon = false; // yra rutulio šviesos diodas įjungtas arba išjungtas
ballReturn = klaidinga; // ar grąžiname kamuolį po irklo smūgio?
Rutulyje piešimo kilpoje () turime:
if ((millis () - ballTime> bThresh) && bon == false) {// jei kamuolys yra IŠJUNGTAS ir pakankamai laiko praėjo ballOn (); // įjunk rutulio šviesos diodą
bon = tiesa; // kamuolys dabar įjungtas
ballTime = milis (); // iš naujo nustatyti „BallTime“dabartinį laiką
}
if ((millis () - ballTime> bThresh) && bon == true) {// jei kamuolys įjungtas ir praėjo pakankamai laiko
ballOff (); // išjungti rutulio šviesos diodą
bon = false; // kamuolys dabar IŠJUNGTAS
ballTime = milis (); atkurti kamuoliuko dabartinį laiką
}
Yra daug būdų, kaip sukurti šį žaidimą. Tai tik mano pageidavimai.
Eskizas yra visiškai dokumentuotas, todėl kviečiu perskaityti kodą ir pamatyti, kaip jis veikia.
Patikrinkite, sukompiliuokite ir įkelkite savo kodą.
Mėgaukitės žaidimu!
3 žingsnis: Išvada
Dėkoju „Elegoo Inc“už pradinį rinkinį, naudojamą šiame projekte. Tai rinkinys su daugybe dalių ir modulių, kurie padės jums patekti į „Arduino Maker“pasaulį.
Rekomenduojamas:
„Pasidaryk pats“„Leds Arduino“ruletės žaidimas: 3 žingsniai (su nuotraukomis)
„Pasidaryk pats“37 „Leds Arduino“ruletės žaidimas: Ruletė yra kazino žaidimas, pavadintas prancūziško žodžio, reiškiančio mažą ratą, vardu
DINO ŽAIDIMAS NAUDOJANT LDR: 5 žingsniai
DINO ŽAIDIMAS NAUDOJANT LDR: „Dinosaur Game“, dar žinomas kaip „T-Rex Game“ir „Dino Runner“, yra integruotas naršyklės žaidimas „Google Chrome“žiniatinklio naršyklėje. Žaidimą sukūrė Sebastienas Gabrielis 2014 m. Ir jį galima pasiekti paspaudus tarpo klavišą neprisijungus prie „Google Chrome“. L
„BBC Micro: bit and Scratch“- interaktyvus vairas ir vairavimo žaidimas: 5 žingsniai (su nuotraukomis)
„BBC Micro: bit and Scratch“- interaktyvus vairas ir vairavimo žaidimas: Viena iš mano šios klasės užduočių šią savaitę yra naudoti „BBC Micro: bit“sąsajai su mūsų parašyta „Scratch“programa. Maniau, kad tai puiki proga panaudoti „ThreadBoard“ir sukurti įterptąją sistemą! Mano įkvėpimas nuo nulio
„Python Tic Tac Toe“žaidimas: 4 žingsniai
„Python Tic Tac Toe“žaidimas: „Python Tic Tac Toe“žaidimas Šis žaidimas sukurtas kompiuterine „Python“versija Aš naudoju „Python“redaktorių, pavadintą: pycharm, taip pat galite naudoti įprastą „Python“kodo redaktorių
Simono žaidimas - įdomus žaidimas!: 5 žingsniai
Simono žaidimas - įdomus žaidimas!: Nuoroda: čia Laikas mums treniruoti smegenis, ar ne? Be tų nuobodžių ir beprasmių žaidimų, yra žaidimas „Simono žaidimas“