Innehållsförteckning:

Lazy 301 Dart Buddy !: 5 steg
Lazy 301 Dart Buddy !: 5 steg

Video: Lazy 301 Dart Buddy !: 5 steg

Video: Lazy 301 Dart Buddy !: 5 steg
Video: 20 MOMENTS YOU WOULDN'T BELIEVE IF NOT FILMED 2024, November
Anonim
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!

Mina college -kamrater och jag ärvde nyligen en misshandlad darttavla …

Vi började utforska spel som 301, där varje spelare börjar med 301 poäng kommer ner till noll poäng under några omgångar. Detta var roligt, men att skriva på den (lilla) whiteboardtavlan som fanns bredvid brädan var tidskrävande och hindrade nästa spelare från att skjuta tills den förra spelaren var ur vägen.

SÅ, jag trodde att det skulle vara ett roligt eftermiddagsprojekt att piska ihop en arduino-baserad miniräknare som kan hjälpa oss.

På någon timme hade jag en grov fungerande prototyp på en brödbräda. Men med ytterligare några timmars arbete tog jag bort brödbrädan och fäste allt till en billig låda som jag hängde från väggen.

Tillbehör

Arduino Nano

Alla billiga Adafruit/Amazon -versioner av följande:

16x2 LCD -skärm

Knappsats

Potentiometer (diverse motstånd fungerar)

Man-hane, man-kvinna, kvinnlig-kvinna blandade bygeltrådar

Piezo -högtalare

Bakbord

Steg 1: Kod och planering

Kod och planering
Kod och planering

Koden var extremt enkel och grundläggande. Jag tänkte inte på något fancy här eftersom det var ett snabbt projekt, men du kan röra med koden efter eget tycke. Jag planerade spelet för en till fyra spelare.

Jag skrev en arduino -funktion för att tillfredsställa fyra spelare. Jag kallade det "game4p". Jag kopierade sedan och klistrade in den ytterligare tre gånger och bytte namn på funktionerna "game1P", "game2P", etc. och raderade extra kod i enlighet därmed. Grundidén var följande:

1) Skriv ut poäng, uppmana spelare 1 att gå

2) När spelaren anger poäng, gå vidare till nästa spelare om det finns en

3) upprepa (2) tills alla spelare går, börja sedan igen vid (1)

4) om en spelares poäng når noll, avsluta spelet och be om ett nytt spel

Du kan titta på koden för att se hur jag hanterade saker som

-Mata in saker i knappsatsen

-Säkrar bra input

-Tillåter både addition och subtraktion med knapparna nedre vänster respektive höger

Steg 2: Knappsats

Knappsats
Knappsats

Jag använde en billig knappsats för att hantera min input.

Arduinos knappsatsbibliotek tar hand om alla coola saker bakom kulisserna som vackert förklaras här. I grund och botten behöver du en nål per rad och en nål per kolumn gratis på din arduino.

I mitt fall använde jag den nedre högra tangenten för att utlösa en subtraktionsåtgärd (för att subtrahera din poäng från 301) och den nedre vänstra knappen för att lägga till (om någon förstörde skulle spelet inte förstöras). Genom att trycka på dessa knappar utan att ange ett nummer först gick du bara vidare till nästa spelare.

Efter ett par minuters lek med den seriella skärmen och den medföljande exempelkoden som medföljer knappsatsbiblioteket var jag redo att integrera LCD -skärmen för att visa knapptryckningarna.

Steg 3: LCD -skärm

LCD skärm
LCD skärm

Återigen har arduino också ett inbyggt bibliotek för denna komponent. LCD -biblioteket hanterar alla de shenanigans som LCD -skärmar använder. En bra pinout -resurs hittar du här. Alla LCD -skärmar jag någonsin har använt följer samma pinout som förklaras i den länken.

Vid tidpunkten för den grova prototypen kunde jag inte hitta en potentiometer, som behövs för att justera kontrasten på texten på skärmen med bakgrundsbelysningen (behövs för stift 3). Så jag använde ett gäng motstånd för att skapa en spänningsdelare och undersökte en plats som jag verkade rimlig.

Efter ytterligare ett par minuter med att krångla med seriemonitorn var jag redo att sätta ihop allt!

Steg 4: Slutlig (grov) fungerande produkt

Här är en video av breadboard -produkten i funktion. Allt fungerar som förväntat.

Du kan stanna här efter din arbetstimme, eller så kan du spendera ytterligare några timmar och paketera det för att se ut (lite) snyggare som jag gjorde …

Steg 5: Alla klockor och visselpipor

Image
Image

Nej, det är inte en bomb. Det här ser ganska grovt ut, men det gör jobbet!

Jag lade till en högtalare för lite trevlig feedback som motsvarar bra/dåliga knapptryckningar. Med en liten plastlåda som jag hade lagt runt och några dragkedjor kunde jag packa ihop den här och hänga den på väggen!

Tack för att du läste. Vänligen betygsätt och överväga att rösta på mig i "1 timmes utmaning" där det här projiceras.

Ställ gärna frågor i kommentarerna!

Rekommenderad: