สารบัญ:

Whack-a-moLED!!: 7 ขั้นตอน
Whack-a-moLED!!: 7 ขั้นตอน

วีดีโอ: Whack-a-moLED!!: 7 ขั้นตอน

วีดีโอ: Whack-a-moLED!!: 7 ขั้นตอน
วีดีโอ: ฝึกซ้อมเกมส์ตีหัวตัวตุ่น Whack a Mole Active Arcade เพื่อแข่งขันกีฬาสีออนไลน์ ระดับชั้น อนุบาล 2024, กรกฎาคม
Anonim
ตี-a-moLED!!
ตี-a-moLED!!
ตี-a-moLED!!
ตี-a-moLED!!

โครงการทิงเกอร์แคด »

นี่คือเกม Whack-a-Mole สุดคลาสสิกเวอร์ชัน LED

โดยทั่วไปแล้ว LED แบบสุ่มจาก LED 4 ดวงจะสว่างขึ้นแทนไฝที่มองออกมาจากรู และผู้เล่นปิดไฟ LED โดยใช้จอยสติ๊กแทนการตีไฝ!

เสบียง

Arduino Uno/Nano หรือบอร์ดรุ่นใดก็ได้

ไฟ LED 4 ดวงและตัวต้านทานจำกัดกระแสที่สอดคล้องกัน

โมดูลจอยสติ๊กพร้อมเอาต์พุต X, Y

Buzzer ที่ใช้งานอยู่ (ตัวเลือก)

สายจัมเปอร์..พอแก้จุดบกพร่อง!

ขั้นตอนที่ 1: ต่อวงจร

ต่อวงจร
ต่อวงจร

ต่อบอร์ด Arduino Uno เข้ากับโมดูลจอยสติ๊ก โดยเชื่อมต่อพินอินพุตแบบอะนาล็อก 2 พินเข้ากับเอาต์พุต XY ของจอยสติ๊ก

ไฟ LED 4 ดวงที่จะเชื่อมต่อโดยใช้ตัวต้านทานกับพินเอาต์พุตแบบดิจิตอลหรืออนาล็อก 4 ตัว

Active Buzzer เพื่อเชื่อมต่อกับพินเอาต์พุตดิจิตอล

ขั้นตอนที่ 2: รหัสสำหรับการตั้งค่าพิน

int xVal = 0, yVal = 0, butVal = 0, xPin = A0, yPin = A1, joyPin = 13, butPin = 7, speakerPin = 9;

int leftLED = A2, rightLED = A3, topLED = A4, bottomLED = A5;

int ที่เลือก LED = 0; // สามารถเป็นหนึ่งใน A2, A3, A4 หรือ A5

การตั้งค่าเป็นโมฆะ () {

pinMode(xPin, อินพุต);

pinMode(yPin, INPUT);

โหมดพิน (leftLED, OUTPUT);

โหมดพิน (ไฟ LED ขวา, เอาต์พุต);

โหมดพิน (ไฟบน, เอาต์พุต); โหมดพิน (ด้านล่าง, เอาต์พุต);

pinMode (joyPin, เอาต์พุต);

pinMode(buzzerPin, OUTPUT);

}

ขั้นตอนที่ 3: รหัสสำหรับการตรวจจับจอยสติ๊ก

โมฆะจอยสติ๊กSenseRoutine()

{

xVal = analogRead (xPin); yVal = analogRead (yPin); butVal = digitalRead (butPin);

joyPin = mapXYtoPin(xVal, yVal, butVal);

analogWrite (เลือก LED, 1024);

ถ้า (selectedLED != leftLED) { analogWrite (leftLED, 0); } if (เลือก LED != rightLED) { analogWrite (rightLED, 0); }

ถ้า (selectedLED != topLED) { analogWrite (topLED, 0); }

ถ้า (selectedLED != bottomLED) { analogWrite (bottomLED, 0); }

ถ้า (joyPin == เลือก LED) // Mole Whacked

{

analogWrite (เลือก LED, 0);

//

// เพิ่มโค้ดเล่นเพลง/โทนสำหรับตี moLED!!

//

}

}

int mapXYtoPin (int xVal, int yVal, int butVal) { if ((xVal <100) และ (yVal 400)) { ส่งคืน LED ด้านล่าง; }

else if ((xVal> 900) และ (yVal 400)) { return topLED; }

else if ((xVal 400) และ (yVal <100)) { return leftLED; }

else if ((xVal 400) และ (yVal > 900)) { return rightLED; }

อื่น { กลับ -1; }

}

ขั้นตอนที่ 4: รหัสประจำลูปหลัก

วงเป็นโมฆะ () {

สำหรับ (int i = 0; i < length; i++)

{

ถ้า (สุ่ม (0, 100) > 90) { เลือก LED = anaPinMap (สุ่ม (2, 6));}

// เพิ่มโค้ดเพลงประกอบเกมที่นี่

// *** *** ***

//

}

int anaPinMap (int randNum) {

ถ้า (randNum == 2) { ส่งคืน A2; }

อื่นถ้า (randNum == 3) { ส่งคืน A3; }

อื่นถ้า (randNum == 4) { ส่งคืน A4; }

อื่นถ้า (randNum == 5) { กลับ A5; }

}

ขั้นตอนที่ 5: พร้อมที่จะลอง

ขั้นตอนที่ 6: การใช้งาน Arduino Nano สำหรับต้นแบบ

Image
Image

การใช้งานแบบเดียวกันกับ Arduino nano ในเขียงหั่นขนม บอร์ดสั่งทำพิเศษพร้อมไฟ LED ตัวต้านทานและออด และสวิตช์จอยสติ๊ก X-Y

ขั้นตอนที่ 7: ต้นแบบ Whack-a-MoLED ที่บรรจุหีบห่อขั้นสุดท้ายเพื่อนำเสนอคนที่คุณรัก

ต้นแบบ Whack-a-MoLED บรรจุหีบห่อขั้นสุดท้ายเพื่อนำเสนอคนที่คุณรัก!
ต้นแบบ Whack-a-MoLED บรรจุหีบห่อขั้นสุดท้ายเพื่อนำเสนอคนที่คุณรัก!
ต้นแบบ Whack-a-MoLED บรรจุหีบห่อขั้นสุดท้ายเพื่อนำเสนอคนที่คุณรัก!
ต้นแบบ Whack-a-MoLED บรรจุหีบห่อขั้นสุดท้ายเพื่อนำเสนอคนที่คุณรัก!

วัสดุสำหรับต้นแบบ:

กล่องกระดาษแข็งธรรมดา (ขั้นต่ำ 4 ซม. X 6 ซม. X 3 ซม.) ชิ้นส่วนกระดาษแข็งพิเศษเพื่อรองรับ

กระดาษตกแต่งสำหรับหุ้มตัวถัง (อุปกรณ์เสริม)

กาวอเนกประสงค์/กาว

เขียงหั่นขนมขนาดเล็ก (ไม่จำเป็น)

Arduino นาโน

PCB สากลขนาดเล็ก

แบตเตอรี่ 9V สำหรับจ่ายไฟ Arduino nano (เชื่อมต่อกับขา Vin)

สวิตช์ SPDT

อุปกรณ์สิ้นเปลืองที่เหลือ (ไฟ LED, ตัวต้านทาน, จอยสติ๊ก, ออด, สายไฟ) ตามที่อธิบายไว้ในขั้นตอนที่ 1 ด้านบน

แนะนำ: