Innholdsfortegnelse:
Video: Arduino Space Race Game Version _1: 5 Steps
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:22
Hei venner. I dag viser jeg deg hvordan du kan lage et Space Race Game med LCD5110 -skjerm og joystic. La oss se trinn …
Trinn 1: BEHOV
Her er en liste over deler jeg brukte til å lage dette prosjektet:
- Arduino UNO
- Joystick -modul
- Jumper Wires (mann til mann og mann til kvinne)
- Brødbrett
Trinn 2: SCHEMA
VCC -> Arduino 5V
BL -> Arduino pin 3
GND -> Arduino GND
CLK (SCLK) -> Arduino pin 8
DIN (MOSI) -> Arduino pin 9
DC -> Arduino pin 10
CE eller CS -> Arduino pin 12
RST (RESET) -> Arduino pin 11
Trinn 3: KODE
Koden har forklaringer på kodefunksjoner. Du vil lett forstå det. Hvis du har et problem, kan du kontakte meg.
#inkludere
LCD5110 lcd (8, 9, 10, 11, 12); // (clk, din, dc, rst, ce)
int BL = 3;
ekstern uint8_t SmallFont ; // beskriv skrifttypene extern uint8_t MediumNumbers ; ekstern uint8_t arac ; // beskrive vår form eksternt uint8_t dusman_araci ; // beskriv fiendens form const int xpin = A0; // joystick x pin char pozisyon = 2; // beskriv plasseringen, vår form startplassering 2 boolsk kontroll = true; boolsk dusmanOldu = true; int skor = 0; int hiz = 0; int dusmanKonumu1; // beskrive fiende1 x plassering int dusmanKonumu2; // beskrive fiende2 x plassering int dusmaninYdeKonumu; // beskriv fiender og plassering
void dusmanAraci (int yer, int asama) {// angi steder for fiendens former
if (yer == 1) {// if location = 1; lcd.drawBitmap (2, asama, dusman_araci, 12, 8); // tegne fiendens form} if (yer == 2) {lcd.drawBitmap (18, asama, dusman_araci, 12, 8); } hvis (yer == 3) {lcd.drawBitmap (34, asama, dusman_araci, 12, 8); }}
void oyunBitti () {// hvis vi mislykkes, er spillet over
mens (1) {forsinkelse (100); // vent 1 milisekund lcd.clrScr (); // tøm skjermen lcd.setFont (SmallFont); // sett skrift lcd.print ("SPILL OVER", SENTRUM, 20); // Skriv ut lcd.update (); // oppdater skjermen}}
ugyldig oppsett () {pinMode (BL, OUTPUT); // sett tilbake lys Utgang lcd. InitLCD (); // start lcd -skjermen lcd.setContrast (55); // sett kontrast (mengde 0 til 127) Serial.begin (9600); // start seriell kommunikasjon}
void loop () {
analogWrite (BL, 200);
// sett spillskjerm lcd.drawRect (0, 0, 47, 47); // vi tegner rektangel lcd.setFont (SmallFont); // sett font lcd.print ("skor", 53, 0); // printf score lcd.setFont (MediumNumbers); // sett font lcd.printNumI (skor, 59, 7); // få score lcd.setFont (SmallFont); lcd.print ("hiz", 56, 25); // utskriftshastighet lcd.setFont (MediumNumbers); lcd.printNumI (hiz, 59, 32); // få hastighet lcd.update (); //Oppdater
// angi joyistick -plasseringen int x = analogRead (xpin); if (x <300 && pozisyon! = 1 && kontrol == true) {// if location! = 1, x state600 && pozisyon! = 3 && kontrol == true) {// if location! = 3, x state> 600 og kontroll er sant pozisyon ++; // øke plasseringen det betyr flytte form til høyre kontroll = false; } annet hvis (x> 300 && x <600) {kontrol = true; } Serial.println (x); // for å lære x -tilstand // angi plasseringen vår form lcd.clrScr (); // tøm skjermen hvis (pozisyon == 1) {// if location = 1; lcd.drawBitmap (2, 37, arac, 12, 8);} // tegne vårt skip hvis (pozisyon == 2) {lcd.drawBitmap (18, 37, arac, 12, 8);}
hvis (pozisyon == 3) {
lcd.drawBitmap (34, 37, arac, 12, 8);}
hvis (dusmanOldu) {// hvis fiendens form er død, sjekk om de er døde
dusmanKonumu1 = pozisyon; // tegne første fiendeform dusmanKonumu2 = tilfeldig (0, 4); // tegne en annen fiendeform et sted dusmaninYdeKonumu = 0; // ta med fienden fra toppen dusmanOldu = false;} // fienden blir gjenskapt slik at de ikke er døde dusmanAraci (dusmanKonumu1, dusmaninYdeKonumu); dusmaninYdeKonumu ++; // tegne første fiendtlige form og få den fra topp til bunn dusmanAraci (dusmanKonumu2, dusmaninYdeKonumu); dusmaninYdeKonumu ++; // tegne den andre fiendens form og få den fra topp til bunn hvis (dusmaninYdeKonumu> 22 && ((dusmanKonumu1 == pozisyon) || (dusmanKonumu2 == pozisyon))) {// hvis vår form berører fiendens former oyunBitti ();} // spillet er over hvis (dusmaninYdeKonumu> 40) {// hvis vår form rømmer fra fiender dusmanOldu = true; // drep fiendens former skor ++;} // øk poengsummen en etter en // øk hastigheten i henhold til poengsummen hvis (skor> = 0 && skor10 && skor20 && skor30 && skor <= 40) {hiz = 3; forsinkelse (40); }}
Trinn 4: KODE BITMAP
Videre må du inkludere bitmap -grafikk for former. Det må være en.c -fil og samme navn med kodenavn. Den må også være i samme fil.
// ------------------------------------------------ ------------------------------ // Fil generert av LCD Assistant // https://en.radzio.dxp.pl /bitmap_converter/// --------------------------------------------- --------------------------------- #include // include for progmem function
const usignert char arac PROGMEM = {// vårt form -bitmap
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,};
const unsigned char dusman_araci PROGMEM = {// fiendeskipets bitmap
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,};
Trinn 5: TAKK FOR VISNINGEN
Før jeg begynte å dele prosjektene mine, ı kodet jeg med tyrkiske ord, så jeg kunne ikke tilfredsstille alle ord til engelsk. Her er ordoversettelsen som jeg bruker dette prosjektet, Oyun = Spill
Arac = Form
Dusman = Fiende
kontroll = kontroll
Konum, Yer = Beliggenhet
Oyun Bitti = Game Over
Skor = Poengsum
Hiz = Hastighet
Anbefalt:
LCD Invaders: a Space Invaders Like Game on 16x2 LCD Character Display: 7 Steps
LCD Invaders: a Space Invaders Like Game på 16x2 LCD Character Display: Det er ikke nødvendig å introdusere et legendarisk "Space Invaders" -spill. Den mest interessante egenskapen til dette prosjektet er at den bruker tekstvisning for grafisk utgang. Det oppnås ved å implementere 8 egendefinerte tegn. Du kan laste ned hele Arduino
Arduino Space Rocks Game: 3 trinn
Arduino Space Rocks Game: Enten de spilles på en datamaskin, på en telefon, på en spillkonsoll eller på en frittstående boks, inneholder mange videospill et element for å unngå hindringer. Jo, det kan bli poeng tildelt for å samle tokens eller finne veien gjennom en labyrint
Space Race Game Versjon 2: 5 trinn
Space Race Game Versjon 2: Hei alle sammen. Før denne spillversjonen publiserte jeg den første versjonen av spillet. I dag vil jeg vise deg Space Race Game versjon 2. La oss se trinn
Quick Reaction Game: Distance Version: 5 Steps (med bilder)
Quick Reaction Game: Distance Version: Hei. Dette er en instruks om hvordan du lager et spill som tester både din reaksjonstid og følelse av avstand. Dette prosjektet er basert på et gammelt prosjekt jeg gjorde med to spillere som konkurrerte om hvem som hadde en raskere reaksjonstid ved å klikke på en knapp
Space Race: Enkelt Arduino Clicker -spill å lage med barna: 7 trinn
Space Race: Simple Arduino Clicker Game to Make With the Kids: ¡ Jeg laster opp en video som viser hvordan det fungerer i dag! Følg med La oss ha det gøy med en instruks som er tilgjengelig i romtema og som kan lages sammen med barn, og senere kan nytes av dem alene som et leketøy. Du kan bruke den som et middel for å lære dem historie om