สารบัญ:
- ขั้นตอนที่ 1: PARTS
- ขั้นตอนที่ 2: SCHEMA
- ขั้นตอนที่ 3: CODE
- ขั้นตอนที่ 4: รหัส BITMAP
- ขั้นตอนที่ 5: ขอบคุณสำหรับการดู
วีดีโอ: เกม Space Race เวอร์ชัน 2: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
เฮ้ทุกคน. ก่อนหน้าเวอร์ชันเกมนี้ ı ได้เผยแพร่เกมเวอร์ชันแรก วันนี้ผมจะมาโชว์ Space Race Game เวอร์ชั่น 2 ให้ดูกันเป็นขั้น…
ขั้นตอนที่ 1: PARTS
นี่คือรายการชิ้นส่วนที่ฉันใช้ทำโปรเจ็กต์นี้:
- Arduino UNO
- โมดูลจอยสติ๊ก
- สายจัมเปอร์ (ชายกับชาย และชายกับหญิง)
- เขียงหั่นขนม
ขั้นตอนที่ 2: SCHEMA
VCC -> Arduino 5V
BL -> พิน Arduino 3
GND -> Arduino GND
CLK (SCLK) -> ขา Arduino 8
DIN (MOSI) -> ขา Arduino 9
DC -> พิน Arduino 10
CE หรือ CS -> Arduino pin 12
RST (รีเซ็ต) -> Arduino pin 11
ขั้นตอนที่ 3: CODE
รหัสมีคำอธิบายของฟังก์ชันรหัส คุณจะเข้าใจมันได้ง่าย หากคุณมีปัญหาคุณสามารถติดต่อฉันได้
#รวม
LCD5110 จอแอลซีดี (8, 9, 10, 11, 12); //(clk, cin, dc,, อันดับแรก, ce)
การควบคุมบูลีน=จริง;
บูลีน dusmanoldu=จริง;
extern uint8_t SmallFont; //อธิบายฟอนต์
ภายนอก uint8_t MediumNumbers; extern uint8_t arac; //อธิบายรูปร่างของเรา extern uint8_t dusmanAraci; // อธิบายรูปร่างของศัตรู const int xpin=A0; //จอยสติ๊ก x พินถ่าน pozisyon=3; //อธิบายตำแหน่ง รูปร่างของเราเริ่มต้นตำแหน่ง 3 int BL=3; int skor=0; int hiz=0; int dusmankonum1; //อธิบายศัตรู1 x ตำแหน่ง int dusmankonum2; //อธิบายศัตรู2 x ตำแหน่ง int dusmankonum3; //อธิบายศัตรู3 x ตำแหน่ง int dusmankonum4; //อธิบายศัตรู4 x ตำแหน่ง int dusmankonum5; //อธิบายศัตรู5 x ตำแหน่ง int dusmaninYdekonumu;
เป็นโมฆะ oyunEkrani () { // ตั้งค่าหน้าจอเกม
lcd.clrScr(); lcd.drawRect(0, 0, 47, 47); //เราวาดสี่เหลี่ยมผืนผ้า lcd.setFont(SmallFont); //ตั้งค่าแบบอักษร lcd.print("skor", 57, 1); //พิมพ์คะแนน lcd.print("hiz", 60, 24); // ความเร็วในการพิมพ์ lcd.setFont (MediumNumbers); //ตั้งค่าแบบอักษร lcd.printNumI(skor, 55, 8); //รับคะแนน lcd.printNumI(hiz, 63, 32); // รับความเร็ว lcd.update(); }
void dusmanAracidurum(int yer, int asama){ //กำหนดตำแหน่งสำหรับรูปร่างของศัตรู
if(yer==1){ lcd.drawBitmap(2, asama, dusmanAraci, 7, 7);lcd.update();}//if location=1 วาดศัตรูกำหนดตำแหน่งนี้ if(yer==2){ lcd.drawBitmap(10, asama, dusmanAraci, 7, 7);lcd.update();} if(yer==3){ lcd.drawBitmap(18, asama, dusmanAraci, 7, 7);lcd.update(); } if(yer==4){ lcd.drawBitmap(26, asama, dusmanAraci, 7, 7);lcd.update();} if(yer==5){ lcd.drawBitmap(34, asama, dusmanAraci, 7), 7);lcd.update();} if(yer==6){ lcd.drawBitmap(42, asama, dusmanAraci, 7, 7);lcd.update();} }
void oyunbitti(){ //ถ้าเราล้มเหลว เกมจะจบลง
ในขณะที่(1){ ล่าช้า(100); //รอ 1 มิลลิวินาที lcd.clrScr(); lcd.setFont(SmallFont); lcd.print("OYUN BITTI", CENTER, 8); //พิมพ์เกมบน lcd.print("skorunuz=", 3, 30); //พิมพ์คะแนนของคุณ lcd.setFont(MediumNumbers); lcd.printNumI(สกอร์ 60, 25); // รับคะแนนล่าสุด lcd.update(); } }
การตั้งค่าเป็นโมฆะ () {
โหมดพิน (BL, OUTPUT); //ตั้งค่าแบ็คไลท์เอาต์พุต pinMode(xpin, INPUT); //ตั้งค่า x pin เป็นอินพุต lcd. InitLCD(); // เริ่มต้นหน้าจอแอลซีดี lcd.setContrast(55); //ตั้งค่าคอนทราสต์(ประมาณ 0 ถึง 127) Serial.begin(9600); // เริ่ม comunation แบบอนุกรม }
วงเป็นโมฆะ () {
analogWrite (BL, 350); oyunEkrani();
//joyistic durumu… //กำหนดตำแหน่ง Joyistick…
int durumx=analogRead(xpin); if(durumx <300 && pozisyon!=1 && kontrol==true){ //if location!=1, x state600 && pozisyon!=6 && kontrol==true){ //if location!=3, x state> 600 และการควบคุมเป็นจริง pozisyon++; //เพิ่มตำแหน่ง หมายถึง ย้ายรูปร่างไปทางขวา kontrol=false; } อื่น if(durumx >300 && durumx <600){ kontrol=true; } //pozisyon durumu… //ตำแหน่ง state… if(pozisyon==1){ //if location=1; lcd.drawBitmap(2, 41, arac, 7, 7);lcd.update();}//draw our ship if(pozisyon==2){ lcd.drawBitmap(10, 41, arac, 7, 7); lcd.update();} if(pozisyon==3){ lcd.drawBitmap(18, 41, arac, 7, 7);lcd.update();} if(pozisyon==4){ lcd.drawBitmap(26), 41, arac, 7, 7);lcd.update();} if(pozisyon==5){ lcd.drawBitmap(34, 41, arac, 7, 7);lcd.update();} if(pozisyon) ==6){ lcd.drawBitmap(42, 41, arac, 7, 7);lcd.update();}
if(dusmanoldu){ //ถ้ารูปร่างของศัตรูตาย ให้ตรวจสอบว่าพวกมันตายหรือไม่
dusmankonum1=pozisyon; //วาดรูปศัตรูตัวแรก dusmankonum2=สุ่ม(0, 6);//วาดรูปร่างของศัตรูอื่นที่ไหนสักแห่ง dusmankonum3=สุ่ม(0, 6); dusmankonum4=สุ่ม(0, 6); dusmankonum5=สุ่ม(0, 6); ดัสมานินอีเดโคนูมู=0; // ดึงศัตรูจากด้านบน dusmanoldu=false;} // ศัตรูถูกสร้างขึ้นใหม่เพื่อไม่ให้ตาย
dusmanAracidurum(dusmankonum1, dusmaninYdekonumu);dusmaninYdekonumu++; //วาดรูปศัตรูตัวแรกแล้วดึงจากบนลงล่าง
dusmanAracidurum(dusmankonum2, dusmaninYdekonumu);dusmaninYdekonumu++; //วาดรูปศัตรูตัวที่สองแล้วดึงจากบนลงล่าง dusmanAracidurum(dusmankonum3, dusmaninYdekonumu);dusmaninYdekonumu++; dusmanAracidurum(dusmankonum4, dusmaninYdekonumu);dusmaninYdekonumu++; if(dusmaninYdekonumu>35 && ((dusmankonum1 == pozisyon)||(dusmankonum2 == pozisyon)||(dusmankonum3 == pozisyon)||(dusmankonum4 == pozisyon))){ // ถ้ารูปร่างของเราสัมผัสกับรูปร่างของศัตรู obit); // เกมจบลง }
if(dusmaninYdekonumu >42){//ถ้ารูปร่างของเราหนีจากศัตรู
dusmanoldu = จริง; //ฆ่าศัตรูรูปร่าง skor++; //เพิ่มคะแนนทีละคน }
//skora gore hizi artiriyoruz //เพิ่มความเร็วตามคะแนน
ถ้า (skor>=0 && skor=10 && skor=20 && skor=30 && skor=40 && skor=50){ hiz=6; ล่าช้า(5); }
}
ขั้นตอนที่ 4: รหัส BITMAP
นอกจากนี้ คุณต้องรวมกราฟิกบิตแมปสำหรับรูปร่าง โดยต้องเป็นไฟล์.c
#include //include สำหรับฟังก์ชั่นโปรแกรม
const unsigned char arac PROGMEM = { // bitmap รูปร่างของเรา
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, };
const unsigned char dusmanAraci PROGMEM = { // เรือรบ bitmap
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, };
ขั้นตอนที่ 5: ขอบคุณสำหรับการดู
ความหมายของคำบางคำ:
โอยุน => เกม
อารัค => รูปร่าง
Dusman => ศัตรู
คอนโทรล => คอนโทรล
Konum, Yer => ที่ตั้ง
Oyun Bitti => Game Over
Skor => คะแนน
ฮิซ => ความเร็ว
แนะนำ:
การสร้างหุ่นยนต์ง่ายๆ จากสิ่งที่คุณหาได้ในบ้านของคุณ (เวอร์ชัน hotwheel): 5 ขั้นตอน
การสร้างหุ่นยนต์อย่างง่ายจากสิ่งที่คุณหาได้ในบ้านของคุณ (เวอร์ชั่น hotwheel): คำแนะนำนี้จะแสดงให้คุณเห็นถึงวิธีการสร้าง hotwheel ที่ทำงานด้วยตัวเองซึ่งทำงานด้วยแบตเตอรี่ double-A คุณจะต้องใช้ของที่หาได้ในบ้านมากที่สุดเท่านั้น โปรดทราบว่าหุ่นยนต์ตัวนี้อาจจะไม่ตรงอย่างแน่นอน, a
เกม "Space Impact" พร้อม Gyro Sensor และ Nokia 5110 LCD: 3 ขั้นตอน
เกม "Space Impact" พร้อม Gyro Sensor และ Nokia 5110 LCD: หลังจากที่ Tamagotchi ของฉันเสียชีวิต (โครงการสุดท้าย) ฉันเริ่มค้นหาวิธีใหม่ในการเสียเวลา ฉันตัดสินใจตั้งโปรแกรมเกมคลาสสิก "Space Impact" บน Arduino เพื่อทำให้เกมน่าสนใจและสนุกขึ้นอีกเล็กน้อย ฉันใช้เซ็นเซอร์ไจโรสโคปที่ฉันมี
เกม Arduino Space Rocks: 3 ขั้นตอน
เกม Arduino Space Rocks: ไม่ว่าจะเล่นบนคอมพิวเตอร์ โทรศัพท์ บนคอนโซลเกม หรือบนกล่องแยก วิดีโอเกมจำนวนมากมีองค์ประกอบของการหลีกเลี่ยงสิ่งกีดขวาง แน่นอนว่าอาจมีคะแนนสะสมสำหรับสะสมโทเค็นหรือค้นหาทางผ่านเขาวงกต
เกม Arduino Space Race เวอร์ชัน _1: 5 ขั้นตอน
เกม Arduino Space Race เวอร์ชัน _1: สวัสดีเพื่อนๆ วันนี้ฉันจะแสดงให้คุณเห็นว่าคุณสร้างเกม Space Race ด้วยหน้าจอ LCD5110 และจอยสติ๊กได้อย่างไร มาดูขั้นตอนกัน
Space Race: เกม Arduino Clicker ง่าย ๆ ที่ต้องทำกับเด็ก ๆ : 7 ขั้นตอน
Space Race: เกม Arduino Clicker ง่ายๆ ที่สร้างร่วมกับเด็กๆ: ¡ฉันกำลังอัปโหลดวิดีโอที่แสดงวิธีการทำงานในวันนี้! คอยติดตาม มาสนุกไปกับคำแนะนำในธีมอวกาศที่สามารถทำร่วมกับเด็ก ๆ ได้ และหลังจากนั้นพวกเขาจะสนุกไปกับพวกเขาเพียงลำพังในฐานะของเล่น คุณสามารถใช้มันเป็นสื่อการสอนประวัติศาสตร์เกี่ยวกับค