Indholdsfortegnelse:

Lazy 301 Dart Buddy !: 5 trin
Lazy 301 Dart Buddy !: 5 trin

Video: Lazy 301 Dart Buddy !: 5 trin

Video: Lazy 301 Dart Buddy !: 5 trin
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!

Mine kollegers værelseskammerater og jeg arvede for nylig et slået dartbræt …

Vi begyndte at udforske spil som 301, hvor hver spiller starter med 301 point får deres vej ned til nul point i løbet af et par runder. Dette var sjovt, men at skrive på den (lille) whiteboard, der blev leveret ved siden af brættet, var tidskrævende og forhindrede den næste spiller i at skyde, indtil den forrige spiller var ude af vejen.

SÅ, jeg tænkte, at det ville være et sjovt eftermiddagsprojekt at piske en arduino-baseret lommeregner sammen, der kunne hjælpe os.

På en time eller deromkring havde jeg en hård prototype på et brødbræt. Men med et par timers arbejde fjernede jeg brødbrættet og fastgjorde alt til en billig kasse, som jeg hængte fra væggen.

Forbrugsvarer

Arduino Nano

Enhver billig Adafruit/Amazon -version af følgende:

16x2 LCD -skærm

Tastatur

Potentiometer (diverse modstande virker)

Mand-han, han-kvinde, kvinde-hun assorterede jumperwire

Piezo højttaler

Brødbræt

Trin 1: Kode og planlægning

Kode og planlægning
Kode og planlægning

Koden var ekstremt let og grundlæggende. Jeg ville ikke have noget fancy her, da det var et hurtigt projekt, men du kan rode med koden efter din smag. Jeg planlagde spillet for alt fra en til fire spillere.

Jeg skrev en arduino -funktion for at tilfredsstille fire spillere. Jeg kaldte det "game4p". Jeg kopierede og indsatte det tre gange mere og omdøbte funktionerne til "game1P", "game2P" osv. Og slettede ekstra kode i overensstemmelse hermed. Grundidéen var følgende:

1) Udskriv score, bed afspiller 1 om at gå

2) Når spilleren indtaster score, skal du gå videre til næste spiller, hvis der er en

3) gentag (2), indtil alle spillere går, start derefter igen ved (1)

4) hvis en spillers score når nul, afslut spillet og bed om et nyt spil

Du kan se på koden for at se, hvordan jeg håndterede ting som

-Indtastning af ting i tastaturet

-Sikring af gode input

-Tillader både addition og subtraktion ved hjælp af henholdsvis nederste venstre og højre tast

Trin 2: Tastatur

Tastatur
Tastatur

Jeg brugte et billigt tastatur til at håndtere mine input.

Arduinos tastaturbibliotek tager sig af alle de fede bag kulisserne ting smukt forklaret her. Grundlæggende har du brug for en nål pr. Række og en nål pr. Kolonne gratis på din arduino.

I mit tilfælde brugte jeg den nederste højre nøgle til at udløse en subtraktionshandling (for at trække din score fra 301) og den nederste venstre tast til tilføjelse (hvis nogen rodede, ville spillet ikke blive ødelagt). Ved at trykke på disse taster uden at indtaste et tal skal du først gå videre til den næste spiller.

Efter et par minutters leg med den serielle skærm og den medfølgende eksempelkode, der følger med tastaturbiblioteket, var jeg klar til at integrere LCD -skærmen for at vise tasterne.

Trin 3: LCD -skærm

LCD -skærm
LCD -skærm

Endnu engang har arduino også et indbygget bibliotek til denne komponent. LCD -biblioteket håndterer alle de shenanigans, som LCD -skærme bruger. En stor pinout -ressource kan findes her. Alle de LCD -skærme, jeg nogensinde har brugt, følger den samme pinout forklaret i dette link.

På tidspunktet for den grove prototype kunne jeg ikke finde et potentiometer, som er nødvendigt for at justere kontrasten af teksten på skærmen med baggrundsbelysningen (nødvendig for pin 3). Så jeg brugte en flok modstande til at oprette en spændingsdeler og undersøgte et sted, jeg syntes rimeligt.

Efter et par minutter mere med den serielle skærm, var jeg klar til at sætte det hele sammen!

Trin 4: Endeligt (groft) arbejdsprodukt

Her er en video af breadboard -produktet i aktion. Alt fungerer som forventet.

Du kan stoppe her efter din arbejdstid, eller du kan bruge et par timer mere og pakke det op for at se (lidt) pænere ud, som jeg gjorde …

Trin 5: Alle klokker og fløjter

Image
Image

Nej, det er ikke en bombe. Det ser ret groft ud, men det får jobbet gjort!

Jeg tilføjede en højttaler til nogle behagelige tilbagemeldinger svarende til gode/dårlige tastetryk. Med en lille plastkasse, jeg havde liggende og nogle lynlåse, kunne jeg pakke denne ting op og hænge den på væggen!

Tak fordi du læste, bedøm venligst og overvej at stemme på mig i "1 times udfordring", hvor dette forventede er indsendt.

Stil gerne spørgsmål i kommentarerne!

Anbefalede: