Përmbajtje:
Video: Floppy Bird: 3 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:11
Sot do të bëjmë një lojë duke përdorur një LCD TFT. Kjo do të dukej si një lojë e cila është vërtet e popullarizuar dhe shumë njerëz ende e luajnë këtë lojë. Loja quhet Flappy Bird por kjo lojë është paksa e ndryshme sepse UI është e ndryshme si dhe mënyra se si funksionon loja. Unë e quaj këtë lojë Floppy Bird pasi kjo mund të çojë në çështje të së drejtës së autorit. Sidoqoftë, është një lojë vërtet argëtuese dhe është e lehtë për tu bërë. Unë e kam bërë këtë të udhëzueshme e cila do t'ju lejojë ta bëni lojën plotësisht dhe ta bëni atë të funksionojë si unë. Nëse keni ndonjë pyetje, ju lutemi komentoni më poshtë dhe unë do të përpiqem t'u përgjigjem këtyre pyetjeve sa më shpejt që të jetë e mundur.
Furnizimet
- Arduino Mega 2560 dhe kabllo
- Arduino Mega Shield
- Arduino TFT LCD E pajtueshme me Arduino Mega 2560
- Kartë SD
Hapi 1: Montimi i LCD TFT
Tani, ne mund të fillojmë të montojmë LCD TFT. Ne do ta lidhim LCD TFT me mburojën, kështu që së pari merrni LCD TFT dhe në thelb e rreshtoni atë me kunjat në mburojë. Pasi të keni rreshtuar kunjat, shtyjeni LCD TFT poshtë në mënyrë që të përshtatet në vend. Kur të gjitha kokat e kunjave janë në mburojë dhe nuk mund t'i shihni kokat e kunjave, atëherë e dini që TFT LCD është e lidhur siç duhet. Tjetra, ne mund ta lidhim mburojën me Arduino Mega 2560. Rreshtoni kunjat e mburojës në Arduino Mega dhe futeni atë. Kur të gjitha kokat e kunjave janë në Arduino Mega dhe nuk mund t'i shihni kokat e kunjave, kjo është kur e dini që TFT LCD është lidhur siç duhet dhe është gati për t'u ndezur. Lidhni Arduino për të parë nëse e keni lidhur LCD siç duhet, nëse LCD ndizet dhe ekrani është i bardhë atëherë urime, ju keni lidhur me sukses TFT LCD dhe tani është gati për tu programuar. Së fundmi, ne kemi një gjë për të bërë, e cila është lidhja e kartës SD në LCD. Në anën e pasme të TFT LCD ka një vend të kartës SD ku thjesht mund të lidhni kartën SD. Prandaj, thjesht lidheni atë dhe gjithçka është bërë.
Hapi 2: Programimi i LCD TFT
Tani, ne do të programojmë LCD -në në mënyrë që të funksionojë loja dhe ne mund ta luajmë atë. Më poshtë është kodi që duhet të përpiloni dhe ngarkoni duke përdorur Arduino IDE.
Problemet që mund të keni:
Ndryshoni parametrat e TFT LCD sipas modelit që keni.
KODI PLOT:
#përfshi #përfshi #përfshi
// ==== Krijimi i objekteve
UTFT myGLCD (ILI9341_16, 38, 39, 40, 41); // Parametrat duhet të përshtaten me modelin tuaj Display/Shield URTouch myTouch (6, 5, 4, 3, 2);
// ==== Përcaktimi i Fonteve
jashtme uint8_t SmallFont ; ekstern uint8_t BigFont ; jashtme uint8_t SevenSegNumFont ;
zog i jashtëm i panënshkruar int01 [0x41A]; // Bitmap Zogu
int x, y; // Variablat për koordinatat ku ekrani është shtypur
// Floppy Bird
int xP = 319; int yP = 100; int yB = 50; int moveRate = 3; int fallRateInt = 0; float fallRate = 0; int rezultati = 0; int lastSpeedUpScore = 0; int më i lartëScore; boolean screenPressed = false; lojë booleanStarted = false;
void setup () {
// Filloni të shfaqni myGLCD. InitLCD (); myGLCD.clrScr (); myTouch. InitTouch (); myTouch.setPrecision (PREC_MEDIUM); rezultati më i lartë = EEPROM.lexo (0); // Lexoni rezultatin më të lartë nga EEPROM initateGame (); // Filloni lojën}
lak void () {
xP = xP-moveRate; // xP - x koordinata e shtyllave; diapazoni: 319 - (-51) shtylla tërheqëse (xP, yP); // Vizaton shtyllat // koordinata yB - y e zogut e cila varet nga vlera e ndryshores në rënieRate yB+= fallRateInt; fallRate = rënieRate+0.4; // Çdo inetracion shkalla e rënies rritet në mënyrë që të mund të kemi efektin e nxitimit/ gravitetit fallRateInt = int (fallRate); // Kontrollon për përplasje nëse (yB> = 180 || yB <= 0) {// lojë e sipërme dhe e poshtmeOver (); } if ((xP = 5) && (yB <= yP-2)) {// loja e shtyllës së sipërmeMbi (); } if ((xP = 5) && (yB> = yP+60)) {// lojë me shtyllë më të ulëtOver (); } // Vizaton zogun drawBird (yB);
// Pasi shtylla të ketë kaluar nëpër ekran
nëse (xPRESET = 250) && (x = 0) && (y = 0) && (x = 30) && (y = 270) {myGLCD.setColor (0, 200, 20); myGLCD.fillRect (318, 0, x, y-1); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319, 0, x-1, y);
myGLCD.setColor (0, 200, 20);
myGLCD.fillRect (318, y+81, x, 203); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319, y+80, x-1, 204); } tjetër nëse (x <= 268) {// Vizaton drejtkëndësh blu në të djathtë të shtyllës myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x+51, 0, x+60, y); // Vizaton shtyllën myGLCD.setColor (0, 200, 20); myGLCD.fillRect (x+49, 1, x+1, y-1); // Vizaton kornizën e zezë të shtyllës myGLCD.setColor (0, 0, 0); myGLCD.drawRect (x+50, 0, x, y); // Vizaton drejtkëndëshin blu në të majtë të shtyllës myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x-1, 0, x-3, y);
// Shtylla e poshtme
myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x+51, y+80, x+60, 204); myGLCD.setColor (0, 200, 20); myGLCD.fillRect (x+49, y+81, x+1, 203); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (x+50, y+80, x, 204); myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x-1, y+80, x-3, 204); } // Vizaton rezultatin myGLCD.setColor (0, 0, 0); myGLCD.setBackColor (221, 216, 148); myGLCD.setFont (BigFont); myGLCD.printNumI (rezultati, 100, 220); }
// ====== drawBird () - Funksioni i personalizuar
void drawBird (int y) {// Vizaton zogun - bitmap myGLCD.drawBitmap (50, y, 35, 30, bird01); // Vizaton drejtkëndëshat blu mbi dhe poshtë zogut në mënyrë që të pastrojë gjendjen e tij të mëparshme myGLCD.setColor (114, 198, 206); myGLCD.fillRoundRect (50, y, 85, y-6); myGLCD.fillRoundRect (50, y+30, 85, y+36); } // ======== gameOver () - Funksioni i personalizuar void gameOver () {vonesë (3000); // 1 sekondë // Pastron ekranin dhe printon tekstin myGLCD.clrScr (); myGLCD.setColor (255, 255, 255); myGLCD.setBackColor (0, 0, 0); myGLCD.setFont (BigFont); myGLCD.print ("GAME OVER", CENTER, 40); myGLCD.print ("Rezultati:", 100, 80); myGLCD.printNumI (rezultati, 200, 80); myGLCD.print ("Rinisja…", CENTER, 120); myGLCD.setFont (SevenSegNumFont); myGLCD.printNumI (2, CENTER, 150); vonesa (1000); myGLCD.printNumI (1, QENDRA, 150); vonesa (1000); // Shkruan rezultatin më të lartë në EEPROM nëse (rezultati> rezultati më i lartë) {më i lartëScore = rezultati; EEPROM.shkruaj (0, rezultati më i lartë); } // Rivendos variablat për të filluar vlerat e pozicionit xP = 319; yB = 50; fallRate = 0; rezultat = 0; lastSpeedUpScore = 0; lëvizjeRate = 3; gameStarted = false; // Rinisni lojën beginateGame (); }
Hapi 3: U krye
Ne kemi bërë qarkun dhe kemi përpiluar kodin. Tani, ne vetëm duhet të lidhim mega Arduino dhe të luajmë lojën.
Këtu, kam një lidhje me një video që tregon se si funksionon kjo lojë dhe çfarë të bëni për ta konfiguruar:
drive.google.com/file/d/18hKQ8v2w2OkM_std-…
Më tregoni nëse keni ndonjë problem më poshtë.
Recommended:
Arduino Flappy Bird - Projekt lojë Arduino 2.4 "TFT Touchscreen SPFD5408 Bird Game: 3 hapa
Arduino Flappy Bird | Arduino 2.4 "TFT Touchscreen SPFD5408 Bird Project Project: Flappy Bird ishte lojë shumë e popullarizuar atje në pak vite dhe shumë njerëz e krijuan atë në mënyrën e tyre, ashtu edhe unë, krijova versionin tim të zogut flappy me Arduino dhe 2.4 të lirë" TFT " Ekran me prekje SPFD5408, Pra, le të fillojmë
Sistemi i Zgjuar i Drejtimit për Makinat Robot Duke Përdorur Stepper Motor të Floppy/CD Drive të vjetër: 8 hapa (me fotografi)
Sistemi i Zgjuar i Drejtimit për Makinat Robot Duke Përdorur Stepper Motor të Old Floppy/CD Drive: Sistemi i zgjuar i drejtimit për makinat robotike A jeni i shqetësuar të bëni një sistem të mirë drejtimi për makinën tuaj robot? Këtu është një zgjidhje e shkëlqyeshme vetëm duke përdorur disqet tuaja të vjetra të floppy/ CD/ DVD. shikojeni dhe merrni një ide për tëVizitoni georgeraveen.blogspot.com
Floppy Apple II Hackintosh I7-7700 3.6Ghz: 7 hapa
Floppy Apple II Hackintosh I7-7700 3.6Ghz: Ky imazh i parë do t'ju japë referencë për një makinë të pacenuar (me logon origjinale të ylberit të Apple), e imja ka pak më shumë kilometrazh në të. Imazhi i dytë është i brendshëm, kam harruar të bëj një fotografi para se ta çmontoja, kështu që me mirësjellje të Goog
SD/MMC Përshtatet në Floppy Edge-lidhës: 8 hapa (me fotografi)
SD/MMC Përshtatet në Floppy Edge-connector: Ju mund të bashkëngjitni një kartë memorie të kamerës SD në çdo projekt DIY të shtëpisë që ka disa kunja I/O, duke përdorur lidhës të zakonshëm që ndoshta keni tani. Për më shumë detaje, si të merrni mmc falas drejtuesit e pajisjeve dhe instalimi i shpërndarësve të ndryshëm të Linux me burim të hapur
Apple Floppy Amp: 8 hapa (me fotografi)
Apple Floppy Amp: Gjeti një të vjetër 5.25 " disketë në një dyqan të lirë për 5.99 dollarë. Më kujtoi fëmijërinë time Apple IIe kështu që përfundova duke e blerë atë pa e ditur se çfarë do të bëja me të. Unë jam një tifoz i anakronizmit (priza pa turp: shiko udhëzues retro hi-fi) dhe