Tartalomjegyzék:

Arduino Sorta Sudoku játék: 3 lépés (képekkel)
Arduino Sorta Sudoku játék: 3 lépés (képekkel)

Videó: Arduino Sorta Sudoku játék: 3 lépés (képekkel)

Videó: Arduino Sorta Sudoku játék: 3 lépés (képekkel)
Videó: The Simplest Ruleset In Sudoku 2024, November
Anonim
Arduino Sorta Sudoku játék
Arduino Sorta Sudoku játék

Sokan szeretnek Sudokuval játszani, az unokák pedig találgatással, ezért úgy döntöttem, hogy készítek egy hordozható „Sorta Sudoku” játékot. Az én verziómban a játék 4x4 -es rács, de csak egy szám van megadva. Az ötlet az, hogy a többi számot a legkevesebb próbálkozással kell kitalálni. Ez egy egyszerű játék, de akár addiktív is lehet, miközben a tökéletes 15 -ös pontszámot követed. A játékhoz mind a szerencse, mind a logika szükséges, és a legjobb pontszám, amit eddig láttam, 16. Nézd meg, mert még Ha nem érdekli a játék építése, akkor előfordulhat, hogy a szoftver bizonyos elemei használhatók a saját projektjeik egyikében.

1. lépés: Hardver

Hardver
Hardver
Hardver
Hardver
Hardver
Hardver

A hardver nagyjából bármilyen Arduino verzióra épülhet. A prototípus elkészítését Nano segítségével végeztem, majd a kódot ATMega328 chipbe égettem. Ugyanaz a chip, amelyet a Nano -ban is használtak, de önmagában történő használata kompaktabb konstrukciót és kevesebb energiafogyasztást tesz lehetővé. Mint látható, az áramkört egy kis kenyérsütő táblára építettem, amely az LCD -modulon van. A másik szempont, hogy más, hogy a Nano 16 MHz-en működik külső kristály segítségével, de én úgy döntöttem, hogy az ATMega328 chiphez a beépített 8 MHz-es oszcillátort használom. Ez alkatrészeket és energiát takarít meg.

A 2004 -es LCD ugyanúgy kapcsolódik az Arduino -hoz, mint egy 1602 -es LCD. Érdekes különbség a megjelenítési helyek címzésében van. Nyilvánvaló, hogy van különbség, mert kettő helyett négy sor van, de 2004 -ben a harmadik sor az első sor, a negyedik pedig a második vonal kiterjesztése. Más szóval, ha lenne egy tesztprogramja, amely csak egy karakterláncot küldött ki az LCD -re, a 21. karakter megjelenik a harmadik sor elején, a 41. karakter pedig az első sor elejéig. A szoftver ezt a különbséget egy LCD címkeresési táblával kezeli.

A játék bemenete egy házi 4x4 kapcsoló mátrix. Minden kapcsoló közvetlenül megfelel a kijelző megfelelő helyének. Van egy tápkapcsoló és egy visszaállító kapcsoló is. A reset kapcsoló törli a régi játékot, és új játékot hoz létre.

Úgy döntöttem, hogy a verziómat akkumulátorral működtetem, ezért egy közös 18650 Li-ion, 3,6 voltos akkumulátort használtam. Ehhez egy kis táblát kellett hozzáadnom az USB újratöltéshez, és egy másik kis táblát, hogy az akkumulátor feszültségét 5 voltra emelje az LCD és az ATMega chip esetében. A képek az általam használt modulokat mutatják, de vannak all-in-one modulok, amelyek mindkét funkciót ellátják.

2. lépés: Szoftver

A szoftver ugyanaz mind a Nano, mind az ATMega328 chipnél. Az egyetlen különbség a programozási módszerben van. Az LCD szoftver saját, csupasz verzióját és a billentyűzet mátrix dekódoló szoftvert használom. Ezek külön „belefoglaló” fájlok a projekthez.

A „random” és a „randomSeed” parancsok segítik a játék létrehozását. Hozzáadtam egy mentést az EEPROM -hoz a „magból” annak biztosítására, hogy minden egyes bekapcsoláskor más sorrendet generáljanak. A rejtvény sorai egy 24 elemből álló keresési tömbből származnak. Az első három sort véletlenszerűen választjuk ki a táblázatból, ellenőrizzük, hogy a kiválasztott sor nem ütközik -e egy előző sorral. Az utolsó sort manuálisan kell kitölteni, mert ezen a ponton csak egy lehetséges minta lesz. Ezután már csak a billentyűzet mátrixát kell beolvasni, és a gombnyomásokat számokká kell alakítani.

Egy szám kitalálásához nyomja meg többször a megfelelő kapcsolót. Minden megnyomás növeli a megjelenített számot. Ha túllépi a kívánt számot, nyomja meg tovább. Ha egy másodpercre elengedi a kapcsolót, az rögzíti az utoljára megjelenített számot. Ha a szám helytelen, törli a számot, és megpróbálhatja újra. Minden találgatás növeli a megjelenített számlálót, és ha egy számot helyesen kitalálunk, a mátrixkapcsoló ténylegesen le van tiltva.

3. lépés: Megjelenítés

Kijelzők
Kijelzők
Kijelzők
Kijelzők
Kijelzők
Kijelzők

Íme néhány kép a különböző kijelzőkről.

Ajánlott: