Sisällysluettelo:

Arduino Sorta Sudoku -peli: 3 vaihetta (kuvilla)
Arduino Sorta Sudoku -peli: 3 vaihetta (kuvilla)

Video: Arduino Sorta Sudoku -peli: 3 vaihetta (kuvilla)

Video: Arduino Sorta Sudoku -peli: 3 vaihetta (kuvilla)
Video: I Reviewed the Most Ridiculous Gadgets from my Spam Folder 2024, Marraskuu
Anonim
Arduino Sorta Sudoku -peli
Arduino Sorta Sudoku -peli

Monet ihmiset haluavat pelata Sudokua ja lapsenlapset pitävät arvauspeleistä, joten päätin tehdä kannettavan”Sorta Sudoku” -pelin. Omassa versiossa peli on 4x4 ruudukko, mutta vain yksi numero on annettu. Ajatuksena on arvata muut numerot harvimmalla yrityksellä. Se on yksinkertainen peli, mutta se voi olla tavallaan koukuttava, kun tavoittelet täydellistä pistemäärää 15. Peli vaatii sekä onnea että logiikkaa ja paras piste, jonka olen tähän mennessä nähnyt, on 16. Katso, koska jopa Jos et ole kiinnostunut pelin rakentamisesta, ohjelmistossa voi olla joitain elementtejä, joita voit käyttää yhdessä projektissasi.

Vaihe 1: Laitteisto

Laitteisto
Laitteisto
Laitteisto
Laitteisto
Laitteisto
Laitteisto

Laitteisto voi perustua melkein mihin tahansa Arduinon versioon. Tein prototyypin käyttämällä nanoa ja poltin sitten koodin ATMega328 -siruun. Tämä on sama siru kuin nanossa, mutta sen käyttö yksinään mahdollistaa kompaktimman rakenteen ja pienemmän virrankulutuksen. Kuten näette, rakensin piirin pienelle leipälevylle, joka on LCD -moduulin takana. Toinen näkökohta, joka on erilainen, on se, että Nano toimii 16 MHz: llä ulkoista kideä käyttäen, mutta päätin käyttää sisäänrakennettua 8 MHz: n oskillaattoria ATMega328-sirulle. Se säästää osia ja virtaa.

Vuoden 2004 LCD liitetään Arduinoon samalla tavalla kuin 1602 LCD. Mielenkiintoinen ero on näyttöpaikkojen osoitteissa. On selvää, että ero on olemassa, koska linjoja on neljä kahden sijasta, mutta vuonna 2004 kolmas rivi on ensimmäisen rivin jatke ja neljäs rivi toisen linjan jatke. Toisin sanoen, jos sinulla olisi testiohjelma, joka lähetti juuri merkkijonon nestekidenäyttöön, 21. merkki ilmestyisi kolmannen rivin alkuun ja 41. merkki kääriytyy ensimmäisen rivin alkuun. Ohjelmisto käsittelee tämän eron nestekidenäytön hakutaulukon avulla.

Pelin tulo on kotitekoinen 4x4 -kytkinmatriisi. Jokainen kytkin vastaa suoraan vastaavaa sijaintia näytössä. Siellä on myös virtakytkin ja nollauskytkin. Palautuskytkin tyhjentää vanhan pelin ja luo uuden pelin.

Päätin tehdä versiostani akkukäyttöisen, joten käytin tavallista 18650 litiumioniakkua, 3,6 volttia. Tämä edellytti, että lisäsin pienen kortin USB -latauksen mahdollistamiseksi ja toisen pienen kortin, joka nostaa akun jännitteen 5 volttiin nestekidenäytössä ja ATMega -sirussa. Kuvissa näkyy käyttämäni moduulit, mutta on myös all-in-one-moduuleja, jotka suorittavat molemmat toiminnot.

Vaihe 2: Ohjelmisto

Ohjelmisto on sama sekä Nano- että ATMega328 -sirulle. Ainoa ero on ohjelmointimenetelmässä. Käytän omaa barebones -versiota LCD -ohjelmistosta ja näppäimistömatriisin dekoodausohjelmistoa. Nämä ovat erillisiä "sisällytä" -tiedostoja projektille.

Komentoja "random" ja "randomSeed" käytetään pelin luomisessa. Lisäsin "siemenen" tallennuksen EEPROMiin varmistaakseni, että jokaisella käynnistyksellä luodaan eri sekvenssi. Palapelin viivat ovat peräisin 24-elementtisestä hakusarjasta. Kolme ensimmäistä riviä valitaan satunnaisesti taulukosta ja tarkistetaan, ettei valittu rivi ole ristiriidassa edellisen rivin kanssa. Viimeinen rivi täytetään manuaalisesti, koska siinä vaiheessa on vain yksi mahdollinen kuvio. Sen jälkeen on vain skannattava näppäimistömatriisi ja muutettava näppäinpainallukset numeroiksi.

Arvaa numero painamalla vastaavaa kytkintä toistuvasti. Jokainen painallus lisää näytössä näkyvää numeroa. Jos ylität haluamasi numeron, paina vain. Jos vapautat kytkimen hetkeksi, se lukittuu viimeksi näytettyyn numeroon. Jos numero on väärä, se tyhjentää numeron ja voit yrittää uudelleen. Jokainen arvaus lisää näytettyä laskuria ja kun numero on oikein arvattu, kyseinen matriisikytkin poistetaan käytöstä.

Vaihe 3: Näyttää

Näyttää
Näyttää
Näyttää
Näyttää
Näyttää
Näyttää

Tässä muutamia kuvia eri näytöistä.

Suositeltava: