Innehållsförteckning:
Video: Arduino Sorta Sudoku -spel: 3 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:37
Många gillar att spela Sudoku och barnbarnen gillar gissningsspel så jag bestämde mig för att göra ett bärbart "Sorta Sudoku" -spel. I min version är spelet ett 4x4 -rutnät men endast ett nummer tillhandahålls. Tanken är att gissa resten av siffrorna i de få försöken. Det är ett enkelt spel men det kan vara lite beroendeframkallande när du strävar efter den perfekta poängen 15. Spelet kräver både ett inslag av lycka och logik och den bästa poängen jag har sett hittills är 16. Ta en titt eftersom även Om du inte är intresserad av att bygga spelet kan det finnas några delar av programvaran som du kan använda i ett av dina egna projekt.
Steg 1: Hårdvara
Hårdvaran kan baseras på i stort sett vilken som helst Arduino -version. Jag gjorde prototypen med en Nano och brände sedan koden till ett ATMega328 -chip. Det är samma chip som används i Nano men att använda det i sig ger en mer kompakt konstruktion och mindre strömförbrukning. Som du kan se byggde jag kretsen på en liten brödbräda som piggybacks på LCD -modulen. Den andra aspekten som är annorlunda är att Nano körs vid 16-MHz med hjälp av en extern kristall men jag valde att använda den inbyggda 8-MHz-oscillatorn för ATMega328-chipet. Det sparar delar och kraft.
2004 LCD -gränssnittet till Arduino på samma sätt som en 1602 LCD. En intressant skillnad är adresseringen av displayplatserna. Det är uppenbarligen en skillnad eftersom det finns fyra rader istället för två men under 2004 är den tredje raden en förlängning av den första raden och den fjärde raden är en förlängning av den andra raden. Med andra ord, om du hade ett testprogram som just skickade ut en rad tecken till LCD -skärmen, skulle det 21: e tecknet dyka upp i början av den tredje raden och det 41: e tecknet sveper tillbaka till början av den första raden. Programvaran hanterar den skillnaden med en LCD -adressuppslagstabell.
Ingången för spelet är en hemgjord 4x4 -switchmatris. Varje switch motsvarar direkt motsvarande plats på displayen. Det finns också en strömbrytare och en återställningsbrytare. Återställningsomkopplaren rensar det gamla spelet och genererar ett nytt spel.
Jag bestämde mig för att göra min version batteridrivna så jag använde ett vanligt 18650 Li-ion, 3,6-volts batteri. Det krävde att jag lägger till ett litet kort för att möjliggöra USB -laddning och ett annat litet kort för att öka batterispänningen till 5 volt för LCD -skärmen och ATMega -chipet. Bilderna visar modulerna jag använde men det finns också allt-i-ett-moduler som gör båda funktionerna.
Steg 2: Programvara
Programvaran är densamma för både Nano- och ATMega328 -chipet. Den enda skillnaden är i programmeringsmetoden. Jag använder min egen barebones -version av LCD -programvara och tangentbordsmatrisavkodningsprogramvara. Dessa är separata "inkludera" -filer för projektet.
Kommandona "random" och "randomSeed" används för att skapa spelet. Jag lade till en spara till EEPROM för "seed" för att säkerställa att en annan sekvens genereras vid varje uppstart. Linjerna för pusslet härrör från en 24-elementslagsuppsättning. De tre första raderna väljs slumpmässigt från tabellen, med kontroller för att se till att en vald rad inte står i konflikt med en tidigare rad. Den sista raden fylls manuellt eftersom det bara kommer att finnas ett möjligt mönster vid den punkten. Därefter är det bara att skanna tangentbordsmatrisen och konvertera knapptryckningarna till siffror.
För att gissa ett nummer, tryck på motsvarande omkopplare upprepade gånger. Varje tryck ökar det visade antalet. Om du överskrider det nummer du vill, fortsätt bara att trycka på. Om du släpper omkopplaren en sekund låses den senast visade siffran. Om numret är felaktigt rensas numret och du kan försöka igen. Varje gissning ökar den visade räknaren och när ett tal är korrekt gissat, är matrisomkopplaren inaktiverad.
Steg 3: Visar
Här är några bilder på de olika displayerna.
Rekommenderad:
Ta fantastiska bilder med en iPhone: 9 steg (med bilder)
Ta fantastiska bilder med en iPhone: De flesta av oss har en smartphone med oss överallt nuförtiden, så det är viktigt att veta hur du använder din smartphone -kamera för att ta fantastiska bilder! Jag har bara haft en smartphone i ett par år, och jag har älskat att ha en bra kamera för att dokumentera saker jag
Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: 7 steg (med bilder)
Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: Jag planerar att använda denna Rapsberry PI i ett gäng roliga projekt tillbaka i min blogg. Kolla gärna in det. Jag ville börja använda mitt Raspberry PI men jag hade inte ett tangentbord eller en mus på min nya plats. Det var ett tag sedan jag installerade en hallon
Hur man digitaliserar bilder och filmnegativ med en DSLR: 12 steg (med bilder)
Hur man digitaliserar diabilder och filmnegativ med en DSLR: En mångsidig och stabil inställning för digitalisering av diabilder och negativ med en DSLR eller en kamera med ett makroalternativ. Denna instruerbara är en uppdatering av Hur man digitaliserar 35 mm negativ (uppladdad juli 2011) med flera förbättringar för att utöka dess
Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter - Rc helikopter - RC -plan med Arduino: 5 steg (med bilder)
Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter | Rc helikopter | Rc -plan med Arduino: Att driva en Rc -bil | Quadcopter | Drone | RC -plan | RC -båt, vi behöver alltid en mottagare och sändare, antag att för RC QUADCOPTER behöver vi en 6 -kanals sändare och mottagare och den typen av TX och RX är för dyr, så vi kommer att göra en på vår
Hur man tar isär en dator med enkla steg och bilder: 13 steg (med bilder)
Hur man tar isär en dator med enkla steg och bilder: Detta är en instruktion om hur man demonterar en dator. De flesta av de grundläggande komponenterna är modulära och lätt att ta bort. Det är dock viktigt att du är organiserad kring det. Detta hjälper dig att inte förlora delar, och även för att göra ommonteringen