
Cuprins:
- Provizii
- Pasul 1: Conectați circuitul
- Pasul 2: Cod pentru configurarea pinilor
- Pasul 3: Cod pentru Joystick Sensing
- Pasul 4: Cod principal de rutină buclă
- Pasul 5: Gata de încercare
- Pasul 6: Implementare Arduino Nano pentru prototip
- Pasul 7: Prototipul final Whack-a-MoLED ambalat pentru a-l prezenta pe cel iubit
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-23 15:04


Proiecte Tinkercad »
Aceasta este o versiune LED a clasicului joc Whack-a-Mole.
Practic, un LED aleatoriu din 4 LED-uri se aprinde în loc de o aluniță care privește dintr-o gaură, iar jucătorul oprește LED-ul folosind un joystick în loc să lovească alunița!
Provizii
Arduino Uno / Nano sau orice variantă de placă
4 LED-uri și rezistențe de limitare a curentului corespunzătoare.
Modul joystick cu ieșiri X, Y
Buzzer activ (opțional)
Sârmă jumper.. suficient pentru a depana!
Pasul 1: Conectați circuitul

Conectați placa Arduino Uno la modulul joystick, conectând 2 pini de intrare analogici la ieșirile X Y ale joystick-ului.
4 LED-uri care trebuie conectate folosind rezistențe la 4 pini de ieșire digitale sau analogici.
Buzzer activ pentru a fi conectat la un pin digital de ieșire
Pasul 2: Cod pentru configurarea pinilor
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 selectedLED = 0; // Poate fi unul dintre A2, A3, A4 sau A5
configurare nulă () {
pinMode (xPin, INPUT);
pinMode (yPin, INPUT);
pinMode (LED stânga, OUTPUT);
pinMode (rightLED, OUTPUT);
pinMode (topLED, OUTPUT); pinMode (bottomLED, OUTPUT);
pinMode (joyPin, OUTPUT);
pinMode (buzzerPin, OUTPUT);
}
Pasul 3: Cod pentru Joystick Sensing
joystick nulSenseRoutine ()
{
xVal = analogRead (xPin); yVal = analogRead (yPin); butVal = digitalRead (butPin);
joyPin = mapXYtoPin (xVal, yVal, butVal);
analogWrite (selectedLED, 1024);
if (selectedLED! = leftLED) {analogWrite (leftLED, 0); } if (selectedLED! = rightLED) {analogWrite (rightLED, 0); }
if (selectedLED! = topLED) {analogWrite (topLED, 0); }
if (selectedLED! = bottomLED) {analogWrite (bottomLED, 0); }
if (joyPin == selectedLED) // Mole Whacked
{
analogWrite (LED selectat, 0);
//
// Adăugați cod pentru a reda muzică / ton pentru a bate moLED !!
//
}
}
int mapXYtoPin (int xVal, int yVal, int butVal) {if ((xVal <100) și (yVal 400)) {return bottomLED; }
else if ((xVal> 900) și (yVal 400)) {return topLED; }
else if ((xVal 400) și (yVal <100)) {return leftLED; }
else if ((xVal 400) și (yVal> 900)) {return rightLED; }
else {return -1; }
}
Pasul 4: Cod principal de rutină buclă
bucla nulă () {
for (int i = 0; i <lungime; i ++)
{
if (random (0, 100)> 90) {selectedLED = anaPinMap (random (2, 6));}
// Adăugați cod pentru muzică de joc aici
// *** *** ***
//
}
int anaPinMap (int randNum) {
if (randNum == 2) {return A2; }
else if (randNum == 3) {return A3; }
else if (randNum == 4) {return A4; }
else if (randNum == 5) {return A5; }
}
Pasul 5: Gata de încercare

Pasul 6: Implementare Arduino Nano pentru prototip

Aceeași implementare realizată cu Arduino nano în panou, placă personalizată cu LED-uri, rezistențe și buzzer și comutator cu joystick X-Y.
Pasul 7: Prototipul final Whack-a-MoLED ambalat pentru a-l prezenta pe cel iubit


Consumabile pentru prototip:
Cutie simplă de carton (minim 4cmX6cmX3cm), piese de carton suplimentare pentru suport.
Hârtie decorativă pentru acoperirea șasiului (opțional)
Adeziv / lipici multifuncțional
Mini panou (opțional)
Arduino nano
Mic PCB universal
Baterie de 9V pentru alimentarea Arduino nano (conectați la pinul Vin).
Comutator SPDT
Restul consumabilelor (LED-uri, rezistențe, joystick, buzzer, fire) așa cum este descris în pasul 1 de mai sus.
Recomandat:
Cum să faci 4G LTE dublă antenă BiQuade Pași simpli: 3 pași

Cum să fac 4G LTE Double BiQuade Antenna Pași simpli: De cele mai multe ori mă confrunt, nu am o putere de semnal bună pentru lucrările mele de zi cu zi. Asa de. Căut și încerc diferite tipuri de antenă, dar nu funcționează. După un timp pierdut, am găsit o antenă pe care sper să o fac și să o testez, pentru că nu se bazează pe principiul
Sistemul de alertă pentru parcarea inversă a autovehiculului Arduino - Pași cu pași: 4 pași

Sistemul de alertă pentru parcarea inversă a autovehiculului Arduino | Pași cu pas: în acest proiect, voi proiecta un senzor senzor de parcare inversă Arduino Car Circuit folosind senzorul cu ultrasunete Arduino UNO și HC-SR04. Acest sistem de avertizare auto bazat pe Arduino poate fi utilizat pentru navigație autonomă, autonomie robotică și alte r
LED Whack-a-mole: 5 pași

LED Whack-a-mole: Acest joc de „Whack-a-mole” utilizează șapte LED-uri și un joystick. Există 4 „alunițe” pe placa mea, reprezentată din stânga de LED-urile 3, 4, 5 și 6. Unul dintre aceste patru LED-uri se va aprinde aleatoriu și va oferi un
Whack-a-Mole! (Fără cod!): 9 pași (cu imagini)

Whack-a-Mole! (Fără cod!): Hello World! M-am întors din prăpastia nepublicată și mă întorc din nou cu un alt instructabil! Astăzi, vă voi explica cum, folosind singurele elemente fundamentale ale circuitelor, FĂRĂ NICIUN COD, pentru a construi Whack-a-Mole! Ai 30 de secunde
Whack-a-somebody: 6 pași (cu imagini)

Whack-a-somebody: Acest proiect a fost pentru „Creative Electronics”, un modul de inginerie electronică Beng din anul IV de la Universitatea din Malaga, Școala de telecomunicații (www.etsit.uma.es). În acest instructable am creat o versiune personalizată al Whack-a-mole