Arduino och Touchpad Tic Tac Toe (3 / 8 steg)

Steg 3: Adressering ledde matrisen

Tic tac toe koden behöver vi för att kunna lagra följande information om lysdioder:
-om en lysdiod är tänd eller inte
-lyser, oavsett om det är röda eller gröna

Ett sätt att göra detta är att lagra staten i ett 9-cells matris, med tre siffror för att företräda staten (0 = av, 1 = rött, 2 = grön på). Varje gång vi måste kontrollera att staterna LED, till exempel, för att kolla om det är ett win villkor, vi måste du gå igenom matrisen. Detta är en fungerande metod, men ganska clunky.

En effektivare metod skulle vara att använda två grupper av nio bitar. Den första gruppen av nio bitar lagras på / av status för lysdioder, samt den andra gruppen av nio bits färg. Sedan blir manipulera LED staterna helt enkelt en fråga om bit aritmetiska och skiftande.

Här är ett praktiskt exempel. Låt oss säga vi Rita vårt tic tac toe nät grafiskt och först använda 1: or och 0: or för att representera på / av status (1 är på, 0 är avstängd):

000
000 = matrix med nedre vänstra LED lyser
100

100
010 = matrix med diagonal LED lyser
001

Om vi räkna upp cellerna från nederst vänstra, kan vi skriva ovan representationer som en serie bitar. I det första fallet, som skulle vara 100000000, och i det andra fallet, skulle det vara 001010100. Om vi tänker på dessa som binära representationer, kan sedan varje serie bitar kondenseras till en enda nummer (256 i det första fallet, 84 i det andra fallet). Så istället för att använda en matris för att lagra tillståndet i matrisen, kan vi bara använda ett enda nummer!

På samma sätt kan vi representerar färgen på lysdioden på samma sätt (1 är röd, 0 är grön). Låt oss först anta alla lamporna är tända (så på / av status representeras av 511). I matrisen nedan representerar sedan färg staten av lysdioder:

010 grönt, rött, grönt
101 röd, grön, röd
010 grönt, rött, grönt

Nu, när de visar ledde matrisen, vi har bara att gå igenom var och en av bitarna, först i tillståndet på / av, och sedan i den färg där. Till exempel, låt oss säga vår-off är 100100100, och färgen är 010101010. Här är vår algoritm för att lysa upp ledde matrisen:

Steg 1. Göra en bitvis tillägg av på / av staten med en binär 1 (dvs lite maskering).
Steg 2. Om det är sant, lyser LED. Gör nu en bitvis tillägg av färg staten med en binär 1.
Steg 3. Om det är sant, tänds den röda lysdioden. Om det är falskt, tänds den gröna lampan.
Steg 4. Skifta både på-av staten och färg stat, en bit till höger (dvs lite skiftande).
Steg 5. Upprepa steg 1-4 tills alla nio bitar har lästs.

Observera att vi fyller matrisen bakåt - vi börjar med cell 9, sedan gå tillbaka ner till cell 1.

Också, on-off och färg staterna lagras som ett osignerat heltalstyp (word) i stället för datatypen heltal. Det beror i lite skiftande, om vi inte är försiktiga, vi kanske inadvertenly ändra tecken på variabeln.

Bifogat är koden för matrisen LED-belysning.

Se Steg
Relaterade Ämnen

Intelligent Arduino Uno & Mega Tic Tac Toe (luffarschack)

Jag bestämde mig att skapa det klassiska spelet luffarschack (eller Tic Tac Toe, som den också kallas) på Arduino efter att ha frågat av min dotter om vi kunde bygga ett spel tillsammans. Här är en video henne att spela den slutgiltiga versionen på A...

Kul rustika Tic Tac Toe

Älskar Tic Tac Toe?? Det gör jag med! Jag har spelat det sedan jag var liten, så nu jag antingen vinna eller det är oavgjort ;-DDet är ett roligt spel för att spela med barnen och att göra denna rustik version gör det extra roligt! Gör det och gåva d...

Upcycled Tic-Tac-Toe

Denna månad jag tog den "CENT-SATORISKT bärgning" utmaning. I utmaningen jag är uppgift med omvandla en vanlig post hittades på min lokala Habitat för mänskligheten återställa center till något "cent-satoriskt." Och jag kunde inte spen...

Tic Tac Toe spel med hjälp av Arduino

Tic Tac Toe är en populär två spelare papper i som första spelare att slutföra en rad eller kolumn eller diagonal på 'X' eller ' o ' wins. Om ingen inte kunde uppnå bedriften, dras matchen.Steg 1: Komponenter som krävs1) Arduino Uno / Nano2) 20 x 4 L...

Altoids Tic-Tac-Toe och Puzzle kul

med en övernattning fest? Underhålla barnen på en lördag morgon genom att låta dem göra dessa kex. Du kan inte gå fel som betjänar dessa en morgon. Frukost blir aldrig tråkig leker med Tic-tac-toe och pussel kex. Jag ville att mina barn var unga igen...

Tic-Tac-Toe sköld...

Detta är en hemmagjord sköld för Arduino. Jag kan spela Tic-Tac-tå med MCU med denna sköld bifogas.Folk frågar mig, "Hej, vad gör du hela tiden i din arbetsbänk?", eller "Hey, Visa oss något du har gjort." Och för det mesta jag har int...

Tic-Tac-Toe Robot

i detta Instructable kommer jag visa dig hur man gör en robotarm som spelar Tic Tac Toe med en mikro trollkarl robot controller, 4 servon och byggstenar / material för att förstora. Ledningarna är superenkel, Anslut bara 4 servon och batteriet i Micr...

Amerikanska flaggan Tic Tac Toe

Hålla din fjärde av juli part gäster underhöll med detta lätt att göra amerikanska flaggan tic tac toe styrelse!Steg 1: Samla ditt material 10 stenarBlå permanenta märkpennaRöd permanenta märkpennaBox (dubblerar som tic tac toe styrelsen och behållar...

Halloween tic tac toe (återvunnet grejer)

Halloween Tic Tac ToeÅtervinna projektet är för barn. Resultatet i detta projekt är att börja undervisa några tidiga återvinning medvetenhet. Ha det så kul!!Vad ett bra sätt att återanvända dessa lock som är från vår dagliga användning.Jag bara hade...

Att göra för... tic-tac-toe (Mario bros)

våra döttrar älskar mario och tic tac toe, så jag har dem gått sammanSteg 1: polymerlera hitta en bild på Internet på mario och hans vännerSteg 2: och göra det av leraSteg 3: och baka i ugnen i 30 min 266 grader Fahrenheit och grädda i ugnen i 30 min...

Atmel mikrokontroller spelar Tic-Tac-Toe spelet

detta är Tic-Tac-Toe spel genomförs med nakna ben ATmega168 micro controller. Det fungerar på lägsta möjliga för denna controller frekvens 1 MHz. Som får ström direkt från två AAA laddningsbara batterier. Du kan hitta några ytterligare detaljer i det...

Svart & blå Tic-Tac-Toe

Tic-Tac-Toe är ett fantastiskt spel som kan hålla både barn och vuxna sysselsatta under timmar. Jag tog några av min vänstra över MDF bitar från ett annat projekt och gjorde detta snabb tic-tac-toe spel. Med lite MDF, vinyl papper och kreativitet kun...

BATCH TIC-TAC-TOE BETA

Detta är en beta av en tic-tac-toe spel jag gjorde i baken skriften.Jag jobbar på att göra datorspelare smartare och mer sannolikt att vinna så här betaversion, har bara datorspelare plocka ställen på måfå.Du kan använda detta som en bas för en tic-t...

Resa Tic Tac Toe

Tic tac toe är en awesome resa spel som kan hålla både barn och vuxna ockuperade under timmar av en roadtrip. Med en liten filt och kreativitet kunde jag göra en awesome återanvändbara resor tic tac toe styrelse som även fungerar som en extra väska o...

Hur man skriver en Tic-Tac-Toe Program i Java

Inledning:Tic-Tac-Toe är ett mycket vanligt spel som är ganska lätt att spela. Spelets regler är enkla och välkända. På grund av dessa saker är Tic-Tac-Toe ganska lätt att koden upp. I denna handledning kommer vi att titta på hur man arbetar spela Ti...

Vinnande tic-tac-toe strategier

Alla älskar den enkel omgång tic-tac-toe, men det verkar som en random spel. Egentligen är inte!Det verkar som att många tvister kan lösas genom en enkel spel...Nu kan du vinna nästa tic-tac-toe-off genom att titta på dessa 4 lätt strategier!** EDIT...

K'nex Tic-Tac-Toe

vem vet inte detta spel? Tic-Tac-Toe, en av de mest spelade spel någonsin. Nyligen har jag gjort den Tic-Tac-Toe som Daniel662000 har gjort. Jag såg att det skulle kunna använda förbättring, så jag gjorde denna version. Det är mindre och har en lägre...

Elektroniska Tic-Tac-Toe med RGB lysdioder

RGB LED spel att spela Tic-Tac-Toe för två spelare. Använder 2 AVR mikrokontroller: Mega16 och Mega8. RGB-ljusdioder tillåter varje användare att välja sin färg att representera / mutter....

FPGA Tic Tac Toe

"Tic Tac Toe? Vad är det? Jag har aldrig hört detta."-Ingen någonsinAv Ryan Frawley och Derek NguyenDenna guide visar dig hur man gör en arbetande Tic Tac Toe spel i VHDL på en Nexys 2 FPGA ombord. Denna handledning var gjort för en del av en Ca...