Sisällysluettelo:
- Vaihe 1: LED-valojen asentaminen
- Vaihe 2: Lisää Makeshift -valotunnistin
- Vaihe 3: Lisää sanakirja
- Vaihe 4: Aseta valot syttymään oletusarvoisesti
- Vaihe 5: Syötteen lisääminen
- Vaihe 6: Syötteen käsittely
- Vaihe 7: Oikein arvattujen kirjeiden korjaaminen
- Vaihe 8: Asetusten tarkistaminen ja nollaus
- Vaihe 9: Kaikki muuttujat yhdessä kuvassa
Video: Arduino Hangman Morse: 9 askelta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Tässä opetusohjelmassa näytän sinulle, kuinka voit asettaa oman Arduinon pelaamaan Hangmania lähettämällä Morse -koodia yksinkertaisella taskulampulla tai taskulampputoiminnolla puhelimestasi.
Sinun tarvitsee vain seurata: Arduino-kortti. 10 LED-valoa Johdot yhdistääksesi kaiken.
Vaihe 1: LED-valojen asentaminen
Tässä Morse -pelissä käytetään 4 valoa, jotka osoittavat sanan 4 kirjainta, jotka on arvattava, ja 5 valoa, jotka osoittavat, mitä elämää pelaaja on jättänyt arvaamaan, joten sinun on ensin liitettävä 9 LED -valoa -valot tavalliseen tapaan, kuten kuvasta näkyy.
Vaihe 2: Lisää Makeshift -valotunnistin
Emme voi heittää rahaa elektroniikkaliikkeisiin, joten olen päättänyt pitää tämän projektin halvalla käyttämällä yksinkertaista LED-valoa väliaikaisena valoanturina.
Sinun tarvitsee vain kytkeä LED-valon pluspuoli yhteen analogisista porteistasi (minun tapauksessani A0) ja miinuspuoli maahan.
Vaihe 3: Lisää sanakirja
Aloitetaan ensin lisäämällä eräänlainen sanakirja, jolla käännetään kirjaimet vastaaviin Morse -koodeihin. Tätä varten teemme yksinkertaisesti taulukon 26 x 5, jolloin jokaisen toissijaisen taulukon ensimmäisessä paikassa on kirjain ja neljässä seuraavassa paikassa on vastaava Morse -koodi tai välilyönti, jos koodia ei ole jäljellä. Esimerkiksi s -kirjaimella ensimmäisessä korttipaikassa on 's', toisessa, kolmannessa ja neljännessä paikassa on ''. ja viimeisessä paikassa on ''.
Vaihe 4: Aseta valot syttymään oletusarvoisesti
Tässä vaiheessa varmistamme, että valot palavat, kun ohjelma käynnistyy, ja Morse -kirjain, jota he edustavat, kun käyttäjä on arvannut ne oikein (koodi kirjoitetaan vaiheessa 6). Varmistamme myös, että valoja on päällä vain niin monta elämää kuin pelaajalla on jäljellä.
Ennen tätä varmista, että sinulla on taulukko, jonka porttien numerot ja kokonaisluvut on asetettu 0-arvoon edustamaan ajankohtaa, jolloin valon pitäisi syttyä, sammua ja mikä osa Morsesta LED-valo näyttää parhaillaan.
Vaihe 5: Syötteen lisääminen
Kirjoitamme nyt koodin tarkistaaksemme, palaako soitin valoa analogiseen porttiin A0 liitettyyn LED-valoon ja jos he haluavat kääntää sen oikeaksi kirjaimeksi.
Varmistaaksemme, että lukema on oikea, keskiarvoistamme joka 20 LED-valon lukemaa ja käytämme tätä lukua valon sammuttamiseen tai syttymiseen. Tätä varten asetamme ohjelman alussa NUM_AVG sen määrän kertoja, kun haluamme sen tarkistavan valon ennen sen keskiarvon laskemista. Mitä suurempi tämä luku on, sitä tarkempi lukema on, mutta se voi myös aiheuttaa viivettä.
msBtnPushed edustaa aikaa, jonka valo on ollut päällä. lastPressed on boolean, joka seuraa, oliko valo edellisessä silmukassa.
Vaihe 6: Syötteen käsittely
Tässä vaiheessa katsomme, mitä tehdä, kun on kulunut riittävästi aikaa olettaa, ettei Morsea enää lisätä, ja meidän on tarkistettava, onko Morse lähettänyt kirjeen ja onko se oikea kirje.
Tätä varten meidän on asetettava merkkijono wordToGuess sanalle, jonka haluamme pelaajiemme arvaavan. Minulla on henkilökohtaisesti satunnaislukugeneraattori, joka asettaa sen satunnaiseksi sanaksi alussa, mutta voit myös yksinkertaisesti asettaa sen yhdelle sanalle.
Meidän on myös varmistettava, että laskuri nousee yhden silmukan verran, muuten koko ohjelma ei tee mitään. Lisäksi olen lisännyt viivästystoiminnon varmistaakseni, että silmukka on joka millisekunti.
PS: Kaikki Serial.println -toiminnot ovat vain testausta varten. Ne voidaan poistaa valmistumisen jälkeen.
GoodTimer ja badTimer ovat yksinkertaisesti arvoja, jos aiot käyttää Piezo -elementtiä äänen lisäämiseen. Jos haluat tehdä niin, sinun on myös lisättävä toisessa kuvassa oleva koodi, joka toistaa äänet.
Vaihe 7: Oikein arvattujen kirjeiden korjaaminen
Kuten aiemmin luvattiin, tässä vaiheessa teemme valot, jotka edustavat oikein arvattuja kirjaimia Morse -kirjaimena.
Tätä varten olen kirjoittanut kaksi toimintoa: morseThis ja nextLetter.
Jos ajastin saavuttaa ajan, jolloin valon pitäisi syttyä, se yksinkertaisesti sytyttää valon ja suorittaa koodin asettaakseen uudet ajastimet sammuttamaan valon ja sytyttämään sen uudelleen. pois päältä, se sammuttaa valon ja asettaa sitten koodin edustamaan kirjeen seuraavaa osaa. Jos seuraavaa osaa ei ole, se palauttaa sen ensimmäiseen osaan.
Vaihe 8: Asetusten tarkistaminen ja nollaus
Ohjelma ei tietenkään toimi, jos valoja ei ole asetettu lähtöön ja tuloon. Lisään myös satunnaislukugeneraattorin, jolla voin lisätä sanan sanaluettelosta, jonka olen laittanut sanaan nimeltä wordsToGuess.
Tämän lisäksi meidän pitäisi lisätä nollaustoiminto ja varmistaa, että kaikki arvot palautetaan oletusarvoihin.
Vaihe 9: Kaikki muuttujat yhdessä kuvassa
Lopuksi voit tarkistaa tämän, onko kaikki tarvittavat muuttujat asetettu oikein.
Nauti nyt Hangmanin pelaamisesta Morsessa!
Suositeltava:
Flash Arduino Bootloader ATMega328: 4 askelta
Flash Arduino Bootloader ATMega328: Questo -opetusohjelma, joka tekee karikatyyreistä Bootloader neljälle casulle cui l'ATmega, esittele su una bord di nostra creazione, sia vergine; tule ad esempio nel caso in cui si vuole realizzare la Drivemall
RG 1/144 Unicorn Gundam käyttäen Arduino Nano ja Attiny85: 10 askelta
RG 1/144 Unicorn Gundam Arduino Nanon ja Attiny85: n avulla: RG Unicorn Gundam on vihdoin valmis. Henkilökohtaisesti monet ideat ja konseptit ovat esitelleet ja todistaneet, mutta todellista tulosta ei kuitenkaan ole todella tyydytetty. Tämä johtuu 1/144 -mallin lisärakenteen vakaudesta, koska se ei ole yhtä hyvä
Ihminen seuraa robottia käyttäen Arduino Unoa alle 20 $: 9 askelta
Ihmisen seuraamisrobotti käyttäen Arduino Unoa alle 20 dollaria: joten tein tämän robotin noin vuosi sitten ja rakastin sitä, että se voi seurata sinua missä ja missä tahansa. tämä on paras vaihtoehto koiralle. se on edelleen kanssani tähän asti. Minulla on myös youtube -kanava, jossa voit nähdä sen tekemisen prosessin vi
Kädessä pidettävä Arduino -paperi -kalliosaksipeli 20 x 4 -LCD -näytön avulla I2C: 7 askelta
Kädessä pidettävä Arduino -paperi -kalliosaksipeli 20 x 4 -LCD -näytön käyttäminen I2C: llä: Hei kaikille tai ehkä minun pitäisi sanoa "Hello World!". Olisi suuri ilo jakaa kanssanne projekti, joka on ollut pääsyni moniin Arduinon asioihin. Tämä on kädessä pidettävä Arduino Paper Rock Scissors -peli, jossa käytetään I2C 20x4 LCD -näyttöä. Minä
¡Mi Estación Meteorológica Con Arduino !: 6 askelta
¡Mi Estación Meteorológica Con Arduino !: Este tutorial trata de ense ñ ar c ó mo se puede hacer una estaci ó n meteorol ó gica con un Arduino Uno, un BMP180 y un LCD, de una manera r, aeacute; realidad logre el prop ó sito que es que el LCD mue