
Inhoudsopgave:
- Benodigdheden
- Stap 1: Sluit het circuit aan
- Stap 2: Code voor het instellen van pinnen
- Stap 3: Code voor joystickdetectie
- Stap 4: Routinecode hoofdlus
- Stap 5: Klaar om uit te proberen
- Stap 6: Arduino Nano-implementatie voor prototype
- Stap 7: Laatste verpakt Whack-a-MoLED-prototype om je geliefde te presenteren
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-23 15:01


Tinkercad-projecten »
Dit is een LED-versie van het klassieke Whack-a-Mole-spel.
In feite licht een willekeurige LED van 4 LED's op in plaats van een mol die uit een gat kijkt en de speler schakelt de LED uit met een joystick in plaats van de mol te meppen!
Benodigdheden
Arduino Uno/Nano of een andere variant board
4 LED's en bijbehorende stroombegrenzingsweerstanden.
Joystickmodule met X-, Y-uitgangen
Actieve zoemer (optioneel)
Jumperdraden.. genoeg om te debuggen!
Stap 1: Sluit het circuit aan

Sluit het Arduino Uno-bord aan op de joystickmodule en verbind 2 analoge ingangspinnen met de XY-uitgangen van de joystick.
4 LED's die moeten worden aangesloten met behulp van weerstanden op 4 digitale of analoge uitgangspinnen.
Actieve zoemer die moet worden aangesloten op een digitale uitgangspen
Stap 2: Code voor het instellen van pinnen
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 geselecteerdLED = 0; // Kan een van de A2, A3, A4 of A5 zijn
ongeldige setup() {
pinMode(xPin, INPUT);
pinMode(yPin, INPUT);
pinMode (links LED, UITGANG);
pinMode (rechts LED, UITGANG);
pinMode (topLED, UITGANG); pinMode (onderste LED, UITGANG);
pinMode (joyPin, UITGANG);
pinMode (zoemerPin, UITGANG);
}
Stap 3: Code voor joystickdetectie
void joystickSenseRoutine()
{
xVal = analoog lezen (xPin); yVal = analoogRead(yPin); butVal = digitalRead (butPin);
joyPin = mapXYtoPin(xVal, yVal, maarVal);
analoogWrite(selectedLED, 1024);
if (selectedLED != leftLED) {analogeWrite(leftLED, 0); } if (selectedLED != rightLED) { analogWrite(rightLED, 0); }
if (selectedLED != topLED) {analogeWrite(topLED, 0); }
if (selectedLED != bottomLED) {analogeWrite(bottomLED, 0); }
if (joyPin == selectedLED) // Mole Whacked
{
analogWrite (geselecteerde LED, 0);
//
// Voeg code toe om muziek/toon af te spelen voor het meppen van moLED!!
//
}
}
int mapXYtoPin(int xVal, int yVal, int butVal) { if ((xVal < 100) en (yVal 400)) { return bottomLED; }
else if ((xVal > 900) en (yVal 400)) { return topLED; }
else if ((xVal 400) en (yVal < 100)) { return leftLED; }
else if ((xVal 400) en (yVal> 900)) { return rightLED; }
anders { retourneer -1; }
}
Stap 4: Routinecode hoofdlus
lege lus() {
voor (int i = 0; i < lengte; i++)
{
if (willekeurig(0, 100) > 90) {selectedLED = anaPinMap(willekeurig (2, 6));}
// Voeg hier code toe voor gamemuziek
// *** *** ***
//
}
int anaPinMap(int randNum) {
if (randNum == 2) { retourneer A2; }
else if (randNum == 3) { retourneer A3; }
else if (randNum == 4) { retourneer A4; }
else if (randNum == 5) { retourneer A5; }
}
Stap 5: Klaar om uit te proberen

Stap 6: Arduino Nano-implementatie voor prototype

Dezelfde implementatie gemaakt met Arduino nano in breadboard, op maat gemaakt bord met LED's, weerstanden en zoemer, en X-Y joystickschakelaar.
Stap 7: Laatste verpakt Whack-a-MoLED-prototype om je geliefde te presenteren


Benodigdheden voor prototype:
Eenvoudige kartonnen doos (minimaal 4 cm x 6 cm x 3 cm), extra kartonnen stukken voor ondersteuning.
Decoratief papier om chassis te bedekken (optioneel)
Multifunctionele lijm/lijm
Mini breadboard (optioneel)
Arduino nano
Kleine universele printplaat
9V-batterij voor het voeden van Arduino nano (verbinden met Vin-pin).
SPDT-schakelaar:
Rest van de benodigdheden (LED's, weerstanden, joystick, zoemer, draden) zoals beschreven in stap 1 hierboven.
Aanbevolen:
Game Design in Flick in 5 stappen: 5 stappen

Game-ontwerp in Flick in 5 stappen: Flick is een heel eenvoudige manier om een game te maken, vooral zoiets als een puzzel, visuele roman of avonturengame
Gezichtsdetectie op Raspberry Pi 4B in 3 stappen: 3 stappen

Gezichtsdetectie op Raspberry Pi 4B in 3 stappen: In deze Instructable gaan we gezichtsdetectie uitvoeren op Raspberry Pi 4 met Shunya O/S met behulp van de Shunyaface-bibliotheek. Shunyaface is een bibliotheek voor gezichtsherkenning/detectie. Het project streeft naar de hoogste detectie- en herkenningssnelheid met
LED Whack-a-mole: 5 stappen

LED Whack-a-mole: dit spel van "Whack-a-mole" maakt gebruik van zeven LED's en een joystick. Er zijn 4 "mollen" op mijn bord, van links weergegeven door de 3e, 4e, 5e en 6e LED's. Een van deze vier LED's zal willekeurig oplichten en een vaste a
Whack a Button Multiplayer: 4 stappen

Whack a Button Multiplayer: Een spel zoals een Whack-a-Mole.Gebruik van LED's en knoppen.Er zijn 2 modi:-Single player-Multiplayerin singleplayer-modus, er zijn 3 niveaus:LEVEL_1: 1 diode voor 1 secondeLEVEL_2: 2 diodes voor 1 secondeLEVEL_3: 2 diodes voor 0,7 secondenEn voor de multip
Whack-a-iemand: 6 stappen (met afbeeldingen)

Whack-a-somebody: dit project was voor 'Creative Electronics', een 4e jaars module van Beng Electronics Engineering aan de Universiteit van Malaga, School of Telecommunications (www.etsit.uma.es). In deze instructable hebben we een gepersonaliseerde versie gemaakt van de Whack-a-mole