Sadržaj:
Video: Verzija igre Arduino Space Race _1: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
Hej prijatelji. Danas ću vam pokazati kako možete napraviti igru Space Race na LCD5110 ekranu i joysticku. Pogledajmo korake …
Korak 1: POTREBE
Evo popisa dijelova koje sam koristio za izradu ovog projekta:
- Arduino UNO
- Modul joystick
- Kratkospojne žice (muški na muški i muški na ženski)
- Oglasna ploča
Korak 2: SHEMA
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 ili CS -> Arduino pin 12
RST (RESET) -> Arduino pin 11
Korak 3: KOD
Kod ima objašnjenja funkcija koda. Lako ćete to razumjeti. Ako imate problem, možete me kontaktirati.
#uključi
LCD5110 LCD (8, 9, 10, 11, 12); // (clk, din, dc, rst, ce)
int BL = 3;
extern uint8_t SmallFont ; // opisuje fontove extern uint8_t MediumNumbers ; vanjski uint8_t arac ; // opišimo naš oblik extern uint8_t dusman_araci ; // opisati oblik neprijatelja const int xpin = A0; // joystick x pin char pozisyon = 2; // opisati lokaciju, naš oblik početna lokacija 2 boolean kontrol = true; boolean dusmanOldu = istina; int skor = 0; int hiz = 0; int dusmanKonumu1; // opišite neprijatelja1 x lokaciju int dusmanKonumu2; // opišite neprijatelja2 x lokaciju int dusmaninYdeKonumu; // opišite neprijatelje y lokaciji
void dusmanAraci (int yer, int asama) {// postavljanje lokacija za neprijateljske oblike
if (yer == 1) {// if location = 1; lcd.drawBitmap (2, asama, dusman_araci, 12, 8); // nacrtati neprijateljski oblik} if (yer == 2) {lcd.drawBitmap (18, asama, dusman_araci, 12, 8); } if (yer == 3) {lcd.drawBitmap (34, asama, dusman_araci, 12, 8); }}
void oyunBitti () {// ako ne uspijemo, igra je gotova
while (1) {odgoda (100); // čekati 1 milisekundu lcd.clrScr (); // brisanje zaslona lcd.setFont (SmallFont); // postavljanje fonta lcd.print ("GAME OVER", CENTAR, 20); // ispis lcd.update (); // ažuriranje zaslona}}
void setup () {pinMode (BL, OUTPUT); // postavljeno pozadinsko svjetlo Output lcd. InitLCD (); // iniciranje lcd zaslona lcd.setContrast (55); // postavljanje kontrasta (amound 0 do 127) Serial.begin (9600); // pokretanje serijske komunikacije}
void loop () {{100} {101}
analogWrite (BL, 200);
// postavljanje zaslona igre lcd.drawRect (0, 0, 47, 47); // crtamo pravokutnik lcd.setFont (SmallFont); // postavljanje fonta lcd.print ("skor", 53, 0); // printf score lcd.setFont (srednji brojevi); // postavi font lcd.printNumI (skor, 59, 7); // dobiti rezultat lcd.setFont (SmallFont); lcd.print ("hiz", 56, 25); // brzina ispisa lcd.setFont (MediumNumbers); lcd.printNumI (hiz, 59, 32); // get speed lcd.update (); //ažuriranje
// postavljanje mjesta kontrolne tipke int x = analogRead (xpin); if (x <300 && pozisyon! = 1 && kontrola == true) {// if location! = 1, x state600 && pozisyon! = 3 && kontrol == true) {// if location! = 3, x state> 600 i kontrola je istinita pozisyon ++; // povećati lokaciju znači premjestiti oblik udesno kontrol = false; } else if (x> 300 && x <600) {kontrol = true; } Serial.println (x); // za učenje x stanje // postavite mjesto našeg oblika lcd.clrScr (); // brisanje zaslona if (pozisyon == 1) {// if location = 1; lcd.drawBitmap (2, 37, arac, 12, 8);} // nacrtajmo naš brod if (pozisyon == 2) {lcd.drawBitmap (18, 37, arac, 12, 8);}
if (pozisyon == 3) {
lcd.drawBitmap (34, 37, arac, 12, 8);}
if (dusmanOldu) {// ako je neprijateljski oblik mrtav, provjerite jesu li mrtvi
dusmanKonumu1 = pozisyon; // nacrtati prvi neprijateljski oblik dusmanKonumu2 = random (0, 4); // nacrtati negdje drugi neprijateljski oblik dusmaninYdeKonumu = 0; // dovesti neprijatelja s vrha dusmanOldu = false;} // neprijatelj je ponovno stvoren tako da nije mrtav dusmanAraci (dusmanKonumu1, dusmaninYdeKonumu); dusmaninYdeKonumu ++; // nacrtati prvi neprijateljski oblik i dobiti ga odozgo prema dolje dusmanAraci (dusmanKonumu2, dusmaninYdeKonumu); dusmaninYdeKonumu ++; // nacrtamo drugi neprijateljski oblik i dobijemo ga odozgo prema dolje if (dusmaninYdeKonumu> 22 && ((dusmanKonumu1 == pozisyon) || (dusmanKonumu2 == pozisyon)))) {// ako naš oblik dodirne neprijateljske oblike oyunBitti ();} // igra je gotova if (dusmaninYdeKonumu> 40) {// ako naš oblik pobjegne od neprijatelja dusmanOldu = true; // ubiti neprijateljske oblike skor ++;} // povećati jedan po jedan rezultat // povećati brzinu prema rezultatu if (skor> = 0 && skor10 && skor20 && skor30 && skor <= 40) {hiz = 3; kašnjenje (40); }}
Korak 4: KOD BITMAP
Nadalje, morate uključiti bitmap grafiku za oblike. To mora biti.c datoteka i isto ime s kodnim imenom. Također, mora biti u istoj datoteci.
// ------------------------------------------------ ------------------------------ // Datoteka koju generira LCD pomoćnik // https://en.radzio.dxp.pl /bitmap_converter/// --------------------------------------------- --------------------------------- #include // include za funkciju progmem
const unsigned char arac PROGMEM = {// bitmapa našeg oblika
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,};
const unsigned char dusman_araci PROGMEM = {// bitmapa neprijateljskog broda
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,};
Korak 5: HVALA NA POGLEDANJU
Prije nego što sam počeo dijeliti svoje projekte, kodirao sam ih na turskim riječima tako da nisam mogao svaku riječ na engleski. Ovdje su prijevodi riječi koji koristim ovaj projekt, Oyun = Igra
Arac = Oblik
Dusman = Neprijatelj
kontrol = kontrola
Konum, Yer = Lokacija
Oyun Bitti = Igra je gotova
Skor = rezultat
Hiz = Brzina
Preporučeni:
Arduino voltmetar (0-100V DC) - verzija 2 (bolja): 3 koraka
Arduino voltmetar (0-100V DC)-Verzija 2 (bolja): U ovom uputstvu sam izgradio voltmetar za mjerenje visokog napona DC (0-100v) s relativnom preciznošću i točnošću pomoću Arduino Nano-a i ADS 1115 ADC-a .Ovo je druga verzija voltmetra koja se koristila mojim prethodnim uputama ovdje: https: // ww
ARDUINO SOLARNI UPRAVLJAČ PUNJENJA (verzija 2.0): 26 koraka (sa slikama)
ARDUINO SOLARNI UPRAVLJAČ PUNJENJA (Verzija 2.0): [Reproduciraj video] Prije godinu dana počeo sam graditi vlastiti solarni sustav za napajanje svoje seoske kuće. U početku sam napravio kontroler punjenja temeljen na LM317 i mjerač energije za nadzor sustava. Na kraju sam napravio PWM kontroler punjenja. U Apriju
Arduino kontroler za igre DIY - Arduino PS2 kontroler igre - Igranje Tekkena s DIY Arduino gamepadom: 7 koraka
Arduino kontroler za igre DIY | Arduino PS2 kontroler igre | Igranje Tekkena s DIY Arduino gamepad -om: Zdravo dečki, igranje igara uvijek je zabavno, ali igranje sa vlastitim DIY prilagođenim kontrolorom igara je zabavnije. Zato ćemo u ovim uputama napraviti kontroler igre pomoću arduino pro micro
ARDUINO SOLARNI UPRAVLJAČ PUNJENJA (verzija-1): 11 koraka (sa slikama)
ARDUINO SOLARNI UPRAVLJAČ PUNJENJA (Verzija-1): [Reproduciraj video] U svojim prethodnim uputama opisao sam pojedinosti o nadzoru energije solarnog sustava izvan mreže. Za to sam također pobijedio na natjecanju 123D krugova. Možete vidjeti ovaj ARDUINO ENERGETSKI MJERAČ .Na kraju objavljujem svoju novu verziju-3 za naplatu
SmartPhone Simulator igre- Igrajte Windows igre koristeći IMU za kontrolu pokreta, akcelerometar, žiroskop, magnetometar: 5 koraka
SmartPhone Game Simulator- Igrajte Windows igre koristeći IMU za upravljanje pokretima, akcelerometar, žiroskop, magnetometar: Podržite ovaj projekt: https://www.paypal.me/vslcreations doniranjem kodovima otvorenog koda & podrška daljnjem razvoju