สารบัญ:
- ขั้นตอนที่ 1: ต้องการ
- ขั้นตอนที่ 2: SCHEMA
- ขั้นตอนที่ 3: CODE
- ขั้นตอนที่ 4: รหัส BITMAP
- ขั้นตอนที่ 5: ขอบคุณสำหรับการรับชม
วีดีโอ: เกม Arduino Space Race เวอร์ชัน _1: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
เฮ้เพื่อน วันนี้ฉันจะแสดงให้คุณเห็นว่าคุณสร้างเกม Space Race ด้วยหน้าจอ LCD5110 และจอยสติ๊กได้อย่างไร มาดูขั้นตอน…
ขั้นตอนที่ 1: ต้องการ
นี่คือรายการชิ้นส่วนที่ฉันใช้ทำโปรเจ็กต์นี้:
- 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, din, dc, อันดับแรก, ce)
int BL=3;
extern uint8_t SmallFont; //อธิบายฟอนต์ extern uint8_t MediumNumbers; extern uint8_t arac; //อธิบายรูปร่างของเรา extern uint8_t dusman_araci; // อธิบายรูปร่างของศัตรู const int xpin=A0; //จอยสติ๊ก x พินถ่าน pozisyon=2; //อธิบายตำแหน่ง รูปร่างของเราเริ่มต้นตำแหน่ง 2 ตัวควบคุมบูลีน = true; boolean dusmanOldu = จริง; int skor=0; int hiz=0; int dusmanKonumu1; //อธิบายศัตรู1 x ตำแหน่ง int dusmanKonumu2; //อธิบายศัตรู2 x ตำแหน่ง int dusmaninYdeKonumu; //อธิบายตำแหน่งของศัตรู
void dusmanAraci(int yer, int asama){ //กำหนดตำแหน่งสำหรับรูปร่างของศัตรู
if (yer==1){ //if location=1; lcd.drawBitmap(2, asama, dusman_araci, 12, 8); //วาดรูปศัตรู } if (yer==2){ lcd.drawBitmap(18, asama, dusman_araci, 12, 8); } if (yer==3){ lcd.drawBitmap(34, asama, dusman_araci, 12, 8); }}
เป็นโมฆะ oyunBitti () { // หากเราล้มเหลวเกมจะจบลง
ในขณะที่ (1) { ล่าช้า (100); //รอ 1 มิลลิวินาที lcd.clrScr(); //ล้างหน้าจอ lcd.setFont(SmallFont); //ตั้งค่าแบบอักษร lcd.print("GAME OVER", CENTER, 20); //พิมพ์ lcd.update(); //อัพเดทหน้าจอ }}
การตั้งค่าเป็นโมฆะ () { pinMode (BL, OUTPUT); //ตั้งค่าแบ็คไลท์เอาต์พุต LCD. InitLCD(); // เริ่มต้นหน้าจอแอลซีดี lcd.setContrast(55); //ตั้งค่าคอนทราสต์(ประมาณ 0 ถึง 127) Serial.begin(9600); // เริ่ม comunation แบบอนุกรม }
วงเป็นโมฆะ () {
analogWrite (BL, 200);
// ตั้งค่าหน้าจอเกม lcd.drawRect(0, 0, 47, 47); //เราวาดสี่เหลี่ยมผืนผ้า lcd.setFont(SmallFont); //ตั้งค่าแบบอักษร lcd.print("skor", 53, 0); //printf คะแนน lcd.setFont(MediumNumbers); //ตั้งค่าแบบอักษร lcd.printNumI(skor, 59, 7); //รับคะแนน lcd.setFont(SmallFont); lcd.print("hiz", 56, 25); // ความเร็วในการพิมพ์ lcd.setFont (MediumNumbers); lcd.printNumI(hiz, 59, 32); // รับความเร็ว lcd.update(); //อัปเดต
//กำหนดตำแหน่งจอยสติก 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 และการควบคุมเป็นจริง pozisyon++; //เพิ่มตำแหน่ง หมายถึง ย้ายรูปร่างไปทางขวา kontrol=false; } อื่น if(x>300 && x<600){ kontrol=true; } Serial.println(x); //สำหรับการเรียนรู้สถานะ x //กำหนดตำแหน่งรูปร่างของเรา lcd.clrScr(); //ล้างหน้าจอถ้า (pozisyon==1){ //if location=1; lcd.drawBitmap(2, 37, arac, 12, 8);} //วาดยานของเรา if (pozisyon==2){ lcd.drawBitmap(18, 37, arac, 12, 8);}
ถ้า (pozisyon==3){
lcd.drawBitmap(34, 37, arac, 12, 8);}
if (dusmanOldu){ // ถ้ารูปร่างของศัตรูตาย ให้ตรวจสอบว่าพวกมันตายหรือไม่
dusmanKonumu1 = pozisyon; //วาดรูปศัตรูตัวแรก dusmanKonumu2 = สุ่ม(0, 4); //วาดรูปศัตรูอีกตัวหนึ่ง dusmaninYdeKonumu = 0; // นำศัตรูจากด้านบน dusmanOldu = false;} // ศัตรูถูกสร้างขึ้นใหม่ดังนั้นพวกเขาจึงไม่ตาย dusmanAraci (dusmanKonumu1, dusmaninYdeKonumu); ดัสมานินYdeKonumu++; //วาดรูปศัตรูตัวแรกแล้วดึงจากบนลงล่าง dusmanAraci (dusmanKonumu2, dusmaninYdeKonumu); ดัสมานินYdeKonumu++; // วาดรูปร่างศัตรูที่สองแล้วดึงจากบนลงล่างถ้า (dusmaninYdeKonumu>22 && ((dusmanKonumu1 == pozisyon) || (dusmanKonumu2 == pozisyon))){ // ถ้ารูปร่างของเราสัมผัสรูปร่างของศัตรู oyunBitti();} // เกมจะจบลงถ้า (dusmaninYdeKonumu>40){ // ถ้ารูปร่างของเราหนีจากศัตรู dusmanOldu = true; //ฆ่าศัตรูรูปร่าง skor++;} //เพิ่มคะแนนทีละคน //เพิ่มความเร็วตามคะแนนถ้า (skor>=0 && skor10 && skor20 && skor30 && skor<=40){ hiz = 3; ล่าช้า(40); } }
ขั้นตอนที่ 4: รหัส BITMAP
นอกจากนี้ คุณต้องรวมกราฟิกบิตแมปสำหรับรูปร่าง โดยจะต้องเป็นไฟล์.c และชื่อเดียวกันกับชื่อรหัส นอกจากนี้ยังต้องอยู่ในไฟล์เดียวกัน
//------------------------------------------------ ------------------------------// ไฟล์ที่สร้างโดย LCD Assistant // https://en.radzio.dxp.pl /bitmap_converter/ //--------------------------------------------- --------------------------------- #include //include สำหรับฟังก์ชั่นโปรแกรม
const unsigned char arac PROGMEM = { // bitmap รูปร่างของเรา
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, };
const unsigned char dusman_araci PROGMEM = { // bitmap ของเรือศัตรู
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, };
ขั้นตอนที่ 5: ขอบคุณสำหรับการรับชม
ก่อนที่ ı จะเริ่มแชร์โปรเจ็กต์ของฉัน ı เขียนโค้ดเป็นภาษาตุรกี ดังนั้นฉันจึงไม่มีโอกาสได้แปลทุกคำเป็นภาษาอังกฤษ นี่คือคำแปลที่ฉันใช้โปรเจ็กต์นี้
โอยุน = เกม
อารัค = รูปร่าง
Dusman = ศัตรู
ควบคุม = ควบคุม
Konum, Yer = ที่ตั้ง
Oyun Bitti = เกมโอเวอร์
Skor = คะแนน
ฮิซ = ความเร็ว
แนะนำ:
Arduino โวลต์มิเตอร์ (0-100V DC) - เวอร์ชัน 2 (ดีกว่า): 3 ขั้นตอน
Arduino Volt Meter (0-100V DC) - เวอร์ชัน 2 (ดีกว่า): ในคำแนะนำนี้ ฉันได้สร้างโวลต์มิเตอร์เพื่อวัดแรงดันไฟฟ้า DC สูง (0-100v) ด้วยความแม่นยำและความแม่นยำสัมพัทธ์โดยใช้ Arduino Nano และ ADS 1115 ADC . นี่เป็นโวลต์มิเตอร์รุ่นที่สองที่ใช้คำสั่งก่อนหน้าของฉันที่นี่: https://ww
เกม "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: ไม่ว่าจะเล่นบนคอมพิวเตอร์ โทรศัพท์ บนคอนโซลเกม หรือบนกล่องแยก วิดีโอเกมจำนวนมากมีองค์ประกอบของการหลีกเลี่ยงสิ่งกีดขวาง แน่นอนว่าอาจมีคะแนนสะสมสำหรับสะสมโทเค็นหรือค้นหาทางผ่านเขาวงกต
เกม Space Race เวอร์ชัน 2: 5 ขั้นตอน
เกม Space Race เวอร์ชัน 2: สวัสดีทุกคน ก่อนหน้าเวอร์ชันเกมนี้ ı เผยแพร่เกมเวอร์ชันแรกแล้ว วันนี้ผมจะมาโชว์ Space Race Game เวอร์ชั่น 2 ให้ดูกันเป็นขั้นๆ
Space Race: เกม Arduino Clicker ง่าย ๆ ที่ต้องทำกับเด็ก ๆ : 7 ขั้นตอน
Space Race: เกม Arduino Clicker ง่ายๆ ที่สร้างร่วมกับเด็กๆ: ¡ฉันกำลังอัปโหลดวิดีโอที่แสดงวิธีการทำงานในวันนี้! คอยติดตาม มาสนุกไปกับคำแนะนำในธีมอวกาศที่สามารถทำร่วมกับเด็ก ๆ ได้ และหลังจากนั้นพวกเขาจะสนุกไปกับพวกเขาเพียงลำพังในฐานะของเล่น คุณสามารถใช้มันเป็นสื่อการสอนประวัติศาสตร์เกี่ยวกับค