Innholdsfortegnelse:
- Trinn 1: Sette opp LED-lysene
- Trinn 2: Legg til en Makeshift Light Sensor
- Trinn 3: Legg til ordlisten din
- Trinn 4: Få lysene til å lyse som standard
- Trinn 5: Legge til inndata
- Trinn 6: Håndtering av inngangen
- Trinn 7: Morsing de korrekt gjettede bokstavene
- Trinn 8: Gjennomgå oppsettet og tilbakestillingen
- Trinn 9: Alle variabler i ett bilde
Video: Arduino Hangman in Morse: 9 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
I denne opplæringen vil jeg vise deg hvordan du konfigurerer din egen Arduino for å spille Hangman ved å sende Morse -kode med en enkel lommelykt eller fakkelfunksjonen fra telefonen.
Alt du trenger å følge med er: Et Arduino-bord. 10 LED-lys Ledninger for å koble det hele. Ekstra: Et Piezo-element (for å legge til lyd).
Trinn 1: Sette opp LED-lysene
Dette spillet Morse vil bruke 4 lys for å indikere de 4 bokstavene i ordet som må gjettes og 5 lys for å indikere livene spilleren har igjen å gjette med, så først og fremst må du koble til 9 LED -lys på vanlig måte, som det kan sees på bildet.
Trinn 2: Legg til en Makeshift Light Sensor
Vi kan ikke gå rundt og kaste penger på elektronikkbutikker, så jeg har bestemt meg for å holde dette prosjektet billig ved å bruke et enkelt LED-lys som en provisorisk lyssensor.
Alt du trenger å gjøre er å koble plussiden til LED-lyset til en av dine analoge porter (i mitt tilfelle A0) og minus-siden til bakken.
Trinn 3: Legg til ordlisten din
Først av alt, la oss starte med å legge til en slags ordbok for å oversette bokstaver til de tilsvarende morse -kodene. For å gjøre dette lager vi ganske enkelt en matrise på 26 x 5, med det første sporet i hvert sekundært array som har bokstaven og de 4 neste sporene har den tilsvarende morse -koden eller et mellomrom hvis det ikke er noen kode igjen. Så for eksempel med bokstaven s har det første sporet 's', det andre, tredje og fjerde sporet har et '.' og den siste sporet har ''.
Trinn 4: Få lysene til å lyse som standard
I dette trinnet sørger vi for at lysene er på når programmet starter og Morse bokstaven de representerer når brukeren har gjettet riktig (koden for dette vil bli skrevet i trinn 6). Vi sørger også for at det bare er så mange lys på for livet som spilleren har liv igjen.
Før dette må du kontrollere at du har en matrise med portnumre og heltall satt til 0 for å representere tidspunktet da lyset skal gå på, av og hvilken del av Morse LED-lyset viser for øyeblikket.
Trinn 5: Legge til inndata
Nå skal vi skrive koden for å kontrollere om spilleren skinner et lys på LED-lyset som er koblet til vår analoge port A0, og om de skal oversette den til riktig bokstav.
For å være sikker på at avlesningen er korrekt, gjennomsnitt vi hver 20. avlesning av LED-lyset og bruker det tallet til å spore om lyset er av eller på. For å gjøre dette, ved starten av programmet, satte vi NUM_AVG til antall ganger vi vil at det skal kontrollere lyset før det blir gjennomsnittlig. Jo høyere dette tallet er, desto mer nøyaktig er avlesningen, men det kan også forårsake forsinkelser.
msBtnPushed representerer hvor lang tid lyset har vært på. lastPressed er en boolsk som holder orden på om lyset var på i forrige sløyfe.
Trinn 6: Håndtering av inngangen
For dette trinnet skal vi ta en titt på hva vi skal gjøre når nok tid har gått til å anta at ikke mer Morse kommer til å bli lagt til, og vi må sjekke om Morse sendte inn et brev og om det er en riktig bokstav.
For å gjøre dette må vi ha strengen wordToGuess satt til ordet vi vil at spillerne våre skal gjette. Jeg har personlig en tilfeldig tallgenerator for å sette det til et tilfeldig ord i starten, men du kan også sette det til et enkelt ord.
Vi må også sørge for at telleren går opp med en hver sløyfe, ellers ville ikke hele programmet gjort noe. Videre har jeg lagt til forsinkelsesfunksjonen for å sikre at det er en sløyfe hvert milisekund.
PS: Alle Serial.println -funksjonene er bare for testformål. De kan bli slettet når de er fullført.
GoodTimer og badTimer er ganske enkelt verdier for hvis du planlegger å bruke et Piezo -element for å legge til lyd. Hvis du vil gjøre det, må du også legge til koden i det andre bildet, som spiller lydene.
Trinn 7: Morsing de korrekt gjettede bokstavene
Som lovet før, i dette trinnet skal vi lage lysene som representerer bokstavene som er gjettet riktig Morse til bokstaven deres.
For dette har jeg skrevet to funksjoner: morseThis og nextLetter. Den bruker tallene vi tidligere har angitt i timers -matrisen og endrer dem avhengig av hvilken del av Morse -koden den lyser for øyeblikket.
Hvis timeren når den tiden lyset skal gå på, slår den bare på og kjører koden for å sette nye tidtakere til å slå lyset av og på igjen. Hvis timeren når delen der lyset skal gå tilbake av, den slår av lyset og setter deretter koden til å representere den neste delen av bokstaven. Hvis det ikke er noen neste del, tilbakestiller den den til den første delen.
Trinn 8: Gjennomgå oppsettet og tilbakestillingen
Selvfølgelig vil ikke programmet kjøre hvis lysene ikke er satt til utgang og inngang. Jeg legger også til en tilfeldig tallgenerator for å legge til et ord fra en liste med ord jeg har lagt i en matrise som heter wordsToGuess.
Dessuten bør vi legge til tilbakestillingsfunksjonen og sørge for at alle verdier tilbakestilles til standard.
Trinn 9: Alle variabler i ett bilde
Til slutt kan du bruke dette til å kontrollere om du har alle nødvendige variabler riktig konfigurert.
Nyt nå å spille Hangman in Morse!
Anbefalt:
Morse Code Station: 3 trinn
Morse Code Station: Dit-dit-dah-dah! Lær Morse Code med dette enkle Arduino Uno -prosjektet. Dette enkle Arduino -prosjektet er en Morse Code -stasjon. Morsekode er en kommunikasjonsmetode som koder tegn som en serie prikker og bindestreker. Denne kretsen bruker en piezo -summer til
Arduino Morse Code Writer: 7 trinn (med bilder)
Arduino Morse Code Writer: Jeg laget en robot som kan konvertere en gitt tekst til Morse -kode og deretter skrive den ned !! Den er laget av papp og Lego, og for elektronikken brukte jeg Arduino og bare to motorer
USB Arduino Morse Code Key: 6 trinn
USB Arduino Morse Code Key: Har du noen gang ønsket å skrive på en datamaskin med en morse -nøkkel eller å lære/lære morse -kode? Du er på riktig side! For mine andre prosjekter, sjekk ut nettstedet mitt calvin.sh
Arduino Morse Code -sender: 11 trinn
Arduino Morse Code Transmitter: I denne instruksen vil du bruke en Arduino Uno til å lage en Morse Code transmitter, og bruke den serielle monitoren til å lese meldingene du har sendt. Deler du trenger: Arduino UnoBreadboardBuzzerButtons Jumperwires
Arduino Yún Morse Generator: 4 trinn (med bilder)
Arduino Yún Morse Generator: Har du noen gang vært i en bar hvor du ikke kunne snakke med vennen din fordi musikken var for høy? nå kan du be ham om en øl i Morse Code! La oss komme i gang