Inhoudsopgave:
Video: Arduino Sorta Sudoku-spel: 3 stappen (met afbeeldingen)
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
Veel mensen spelen graag Sudoku en de kleinkinderen houden van raadspelletjes, dus besloot ik een draagbaar "Sorta Sudoku"-spel te maken. In mijn versie is het spel een 4x4 raster, maar er wordt slechts één nummer gegeven. Het idee is om de rest van de getallen in zo min mogelijk pogingen te raden. Het is een eenvoudig spel, maar het kan een beetje verslavend zijn als je de perfecte score van 15 nastreeft. Het spel vereist zowel een element van geluk als logica en de beste score die ik tot nu toe heb gezien is 16. Kijk eens, want zelfs als je niet geïnteresseerd bent in het bouwen van het spel, zijn er misschien enkele elementen van de software die je in een van je eigen projecten kunt gebruiken.
Stap 1: Hardware
De hardware kan gebaseerd zijn op vrijwel elke Arduino-versie. Ik deed het prototype met behulp van een Nano en brandde de code vervolgens in een ATMega328-chip. Dat is dezelfde chip die in de Nano wordt gebruikt, maar als hij alleen wordt gebruikt, is hij compacter gebouwd en wordt er minder stroom verbruikt. Zoals je kunt zien, heb ik het circuit gebouwd op een klein breadboard dat op de LCD-module meelift. Het andere aspect dat anders is, is dat de Nano op 16 MHz werkt met een extern kristal, maar ik heb ervoor gekozen om de ingebouwde 8 MHz-oscillator te gebruiken voor de ATMega328-chip. Dat scheelt onderdelen en stroom.
Het 2004 LCD-interface op de Arduino op dezelfde manier als een 1602 LCD. Een interessant verschil zit in de adressering van de weergavelocaties. Er is duidelijk een verschil omdat er vier lijnen zijn in plaats van twee, maar in de 2004 is de derde lijn een verlenging van de eerste lijn en de vierde lijn een verlenging van de tweede lijn. Met andere woorden, als u een testprogramma had dat zojuist een reeks tekens naar het LCD-scherm stuurde, zou het 21e teken verschijnen aan het begin van de derde regel en het 41e teken loopt terug naar het begin van de eerste regel. De software verwerkt dat verschil met een opzoektabel voor LCD-adressen.
De input voor het spel is een zelfgemaakte 4x4 schakelmatrix. Elke schakelaar komt rechtstreeks overeen met de equivalente locatie op het display. Er is ook een aan / uit-schakelaar en een reset-schakelaar. De reset-schakelaar wist het oude spel en genereert een nieuw spel.
Ik besloot om mijn versie op batterijen te laten werken, dus gebruikte ik een gewone 18650 Li-ion, 3,6-volt batterij. Daarvoor moest ik een klein bord toevoegen om USB-opladen mogelijk te maken en nog een klein bord om de batterijspanning op te voeren tot 5 volt voor het LCD-scherm en de ATMega-chip. De foto's tonen de modules die ik heb gebruikt, maar er zijn ook alles-in-één modules die beide functies vervullen.
Stap 2: Software
De software is hetzelfde voor zowel de Nano- als de ATMega328-chip. Het enige verschil zit in de programmeermethode. Ik gebruik mijn eigen barebones-versie van LCD-software en toetsenbordmatrixdecoderingssoftware. Dit zijn afzonderlijke "include"-bestanden voor het project.
De commando's "random" en "randomSeed" worden gebruikt om het spel te maken. Ik heb een save toegevoegd aan EEPROM van het "seed" om ervoor te zorgen dat bij elke power-up een andere reeks wordt gegenereerd. De regels voor de puzzel zijn afgeleid van een opzoekarray met 24 elementen. De eerste drie regels worden willekeurig uit de tabel geselecteerd, met controles om er zeker van te zijn dat een geselecteerde regel niet conflicteert met een vorige regel. De laatste regel wordt handmatig ingevuld omdat er op dat moment maar één patroon mogelijk is. Daarna is het gewoon een kwestie van de toetsenbordmatrix scannen en de toetsaanslagen omzetten in cijfers.
Druk herhaaldelijk op de corresponderende schakelaar om een getal te raden. Elke keer dat u op drukt, wordt het weergegeven nummer verhoogd. Als u het gewenste aantal overschrijdt, blijft u gewoon drukken. Als u de schakelaar een seconde loslaat, wordt het laatst weergegeven nummer vergrendeld. Als het nummer onjuist is, wordt het nummer gewist en kunt u het opnieuw proberen. Elke gok verhoogt de weergegeven teller en zodra een getal correct is geraden, wordt die matrixschakelaar effectief uitgeschakeld.
Stap 3: Beeldschermen
Hier zijn enkele foto's van de verschillende displays.
Aanbevolen:
DIY slimme weegschaal met wekker (met wifi, ESP8266, Arduino IDE en Adafruit.io): 10 stappen (met afbeeldingen)
DIY Slimme Weegschaal Met Wekker (met Wi-Fi, ESP8266, Arduino IDE en Adafruit.io): In mijn vorige project ontwikkelde ik een slimme weegschaal met Wi-Fi. Het kan het gewicht van de gebruiker meten, het lokaal weergeven en naar de cloud sturen. U kunt hier meer informatie over krijgen op onderstaande link: https://www.instructables.com/id/Wi-Fi-Smart-Scale-wi
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Een computer demonteren met eenvoudige stappen en afbeeldingen: 13 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Een computer demonteren met eenvoudige stappen en afbeeldingen: dit is een instructie over het demonteren van een pc. De meeste basiscomponenten zijn modulair en gemakkelijk te verwijderen. Wel is het belangrijk dat je er goed over georganiseerd bent. Dit zal helpen voorkomen dat u onderdelen kwijtraakt, en ook bij het maken van de hermontage e
PCB-ontwerp met eenvoudige en gemakkelijke stappen: 30 stappen (met afbeeldingen)
PCB-ontwerp met eenvoudige en gemakkelijke stappen: HELLO VRIENDEN Het is een zeer nuttige en gemakkelijke tutorial voor diegenen die PCB-ontwerp willen leren, laten we beginnen
Een video met gesplitst scherm maken in vier stappen: 4 stappen (met afbeeldingen)
Een video met gesplitst scherm maken in vier stappen: we zien vaak dezelfde persoon twee keer in een scène in een tv-toneelstuk. En voor zover we weten heeft de acteur geen tweelingbroer. We hebben ook gezien dat er twee zangvideo's op één scherm worden gezet om hun zangkunsten te vergelijken. Dit is de kracht van spl