Arduino Simon säger (3 / 7 steg)

Steg 3: Mer kod

Vi börjar med funktionen "reset spel" där vi fylla upp våra GAME_SEQUENCE array

< p > void resetGame() {< br > / / reset steg
READ_STEP = 0;
GAME_STEP = 0;

skapa slumpmässig sekvens
för (int jag = 0; jag < GAME_MAX_SEQUENCE; i ++) {< br > GAME_SEQUENCE [i] = random(4) + 1. < br >} < /p >< p > / / gå till nästa spelet staten; Visa ledde sekvens
GAME_STATUS = 1;
} < /p >

Vårt nästa spel steg vore uppspelning steg där vi spelar sekvensen

void playSequence() {< br > / / spela ett steg av vår sekvens
för (int jag = 0; jag < = GAME_STEP; i ++) {
Serial.Print ("Set LED");
Serial.println(GAME_SEQUENCE[i]);
Delay(GAME_SPEED*2);
setLED(GAME_SEQUENCE[i]);
playTone(GAME_SEQUENCE[i]);
Delay(GAME_SPEED);
clearLEDs();

}
Gå till nästa steg: läsa knappar
GAME_STATUS = 2;
}

Efter att ha spelat vår sekvens vänta vi på tryckknapp input

void readSequence() {< br > / / läsa våra knappar
int button_value = readButtons();

om (button_value > 0) {
en knapp har tryckts
om (button_value == GAME_SEQUENCE[READ_STEP]) {
korrekt värde!
setLED(button_value);
playTone(button_value);
digitalWrite (LED_CORRECT, hög);
Delay(GAME_SPEED);
clearLEDs();
digitalWrite (LED_CORRECT, låg);

Kan snabba upp!
GAME_SPEED = GAME_SPEED-15.

Serial.println("correct!");

IF(READ_STEP == GAME_STEP) {
Återställ Läs steg
READ_STEP = 0;
Gå till nästa spel steg
GAME_STEP ++;
Gå till uppspelningsläge sekvens av vårt spel
GAME_STATUS = 1;
Serial.println ("gå till nästa steg");

Tänd alla lysdioder för att ange nästa sekvens
setLEDs(true,true,true,true);
Delay(GAME_SPEED);
setLEDs(false,false,false,false);

} annat {
READ_STEP ++;
}

Delay(10);

} annat {
fel värde!
Gå till spelet över läge
GAME_STATUS = 3;
Serial.println ("Game Over!");
}
}

Delay(10);
}

Slutligen när du gör ett misstag köra vi det "game over" modus:

void gameOver() {< br > / / röd RGB
digitalWrite (LED_WRONG, hög);
Spela Pwa Pwa Pwa
tonen (Summer, 98, TONE_DURATION);
Delay(TONE_DURATION);
tonen (Summer, 93, TONE_DURATION);
Delay(TONE_DURATION);
tonen (Summer, 87, TONE_DURATION);
Delay(TONE_DURATION);
Delay(GAME_SPEED);
}

Vi har också några hjälpare funktioner som gör våra liv lättare, de kan användas var som helst i vår kod

void setLED (int id) {< br > switch(id) {
fall 0:
setLEDs(false,false,false,false);
bryta;
fall 1:
setLEDs(true,false,false,false);
bryta;
fall 2:
setLEDs(false,true,false,false);
bryta;
fall 3:
setLEDs(false,false,true,false);
bryta;
fall 4:
setLEDs(false,false,false,true);
bryta;
}
}

Annullera playTone (int id) {
Switch(ID) {
fall 0:
noTone(BUZZER);
bryta;
fall 1:
tonen (Summer, RED_TONE, TONE_DURATION);
bryta;
fall 2:
tonen (Summer, GREEN_TONE, TONE_DURATION);
bryta;
fall 3:
tonen (Summer, BLUE_TONE, TONE_DURATION);
bryta;
fall 4:
tonen (Summer, YELLOW_TONE, TONE_DURATION);
bryta;
}
}

void setLEDs (boolean röd, booleska green, booleska blå, int gul) {
om (röd) digitalWrite (LED_RED, hög);
annat digitalWrite (LED_RED, låg);
om (grön) digitalWrite (LED_GREEN, hög);
annat digitalWrite (LED_GREEN, låg);
om (blå) digitalWrite (LED_BLUE, hög);
annat digitalWrite (LED_BLUE, låg);
om (gul) digitalWrite (LED_YELLOW, hög);
annat digitalWrite (LED_YELLOW, låg);
}

void clearLEDs() {
setLEDs(false,false,false,false);
}

int readButtons(void) {
om (digitalRead(BUTTON_RED) == 0) tillbaka 1.
annat if (digitalRead(BUTTON_GREEN) == 0) returnera 2.
annat if (digitalRead(BUTTON_BLUE) == 0) returnera 3.
annat if (digitalRead(BUTTON_YELLOW) == 0) returnera 4.

Return 0;
}

Se Steg
Relaterade Ämnen

Total Recall - Arduino Simon Says på steroider!

Total Recall är en Simon baserat spel för Arduino. Din grundläggande Arduino Simon Game består av 4 knappar, 4 lysdioder, en Arduino, lite kod och kanske en talare och ljudeffekter. Total Recall tar saker ett steg längre genom att lägga till en LCD-d...

Arduino - Simple Simon säger spelet

i detta instructable, jag kommer att visa dig hur man gör en enkel Simon säger spel genom att använda en Arduino. Det är inte bara enkla men vi kan få en psykologisk fördel. Jag har ett dåligt minne att komma ihåg något snabbt eller en nya saker. Så...

Simon säger 6 lysdioder

I detta instructable jag kommer att visa dig hur man sätter togheter en simon säger spelet med 6 lysdioder med en arduino. Jag startade detta projekt som ett skolprojekt i början av detta år (2014) och nu är jag färdig.Det är ett mycket enkelt spel:...

Android Bluetooth eldkastare pumpa x4 Simon säger

VARNING! Projektet innehåller extremt brandfarliga brännbara ämnen.Även om jag har tagit extra säkerhetsåtgärder, detta projektrekommenderas inte att prova hemma. Fortsätt på din egen risk.Vill krydda upp din Halloween i år med lite explosiva kul? Va...

Arduino Simon Says

i detta Instructable jag ska visa dig hur man sätter ihop en mycket enkel Simon säger spelet med en Arduino mikro-Controller. Jag först startade detta projekt 2010 och har inte plockat upp igen sedan. Mycket har förändrats i världen av Arduino ända s...

Simon säger spel med unika "twister" controller

jag gjorde detta projekt för ett sista klass projekt i min crafting tekniker klass här senaste terminen. Målet med detta projekt är att göra en kontroll pad ur twister styrelsen för varje makey makey spel. Jag använde min kontroll ombord för en Simon...

Simon säger med lysdioder

Hej!På ett eller annat, har alla de allra flesta av oss spelade "Simon Says" game. I detta spel, en person, Simon eller Susan, Tchad, eller den som råkar vara ledare, säger "Simon säger" och berätta för alla andra spelare att göra någo...

Simon säger Narnia garderob spel

i år på stammen O behandla på min kyrka jag gjorde spelet "Simon säger Narnia". Detta är den elektroniska spel Simon av Hasbro inbyggd i en trä garderob som i filmen The Chronicles of Narnia, "Lejonet, häxan och lejonet" av C.S. Lewis....

Förbättrad "Simon säger" kod

En uppdaterad "Simple Simon" projektet.Specifikt, lättare att arbeta med programvara genomförandet.Steg 1: Komma igångJag började med den instructable på "Simple-Simon-säger-spelet"Kallar det för Järnhandelsvaror genomförande.Som jag r...

Simon säger med LinkIT en

Låt oss gå igenom en klassisk nybörjare projec som kombinerar kretsar, kod och kul: Simon Says. Bygga din egen Simon Says game kan vara ett bra sätt att snabbt dyka djupt i en fantastisk värld av mixtrande. Du får erfarenhet av att bygga några enkla...

Arduino Simon Say

detta är min Arduino Simon Say versionDu behöver:6 x 220 ohm motstånd3 X leds, en för varje färg, grön, röd, gul3 X Push knappar1 X ArduinoNågra kablarSteg 1: Kretsar Diagram 5 volt passerar via knappen till lamporna och till stift 5,6,7 arduino digi...

Avancerade Simon säger

Hej alla!Detta instructables visar "Avancerade Simon Says".Det är anledningen till varför jag ställde "Advance" till "Simon Says".Ni alla kanske vet vad Simon Says och lätt att hitta det med arduino projekt.(Faktiskt, jag gjo...

Arduino Simon Says spel

Detta är ett roligt projekt som jag gjorde med mina barn över julledigheten.För att hysa detta spel beslutade jag att använda en gammal iPhone 5c låda. Jag hade det bara låg runt och tyckte om rätt storlek.Lista över komponenter:(Obs: alla länkar är...

Simon säger med kapacitiv touch sensor

Detta är en grundläggande övning för noobs i arduino.Jag tycker om programmering och jag tror att mi kod kan vara intressant för någon. I min recension om du vill lära sig programmering du shouldn´t kopiera koden på alla i första gången, bör du försö...

Gör din egen 2-spelare Simon säger Game

Detta Instructable förklarar hur man gör en Simon Says spel använder en Altera DE2-115 cyklonen IV FPGA ombord. Detta projekt var gjort för ECE2220 (Digital Logic) vid University of Manitoba.Videon ovan visar arbetande VGA-utgång och hur det förändra...

Simon säger med Play-Doh - Makey Makey

Dover biblioteket värd en Instructables bygga natt featuring Makey Makey kit. Våra stamgäster uppmanas att experimentera med dessa kit att förvandla vardagliga föremål till domänkontrollanter, tangentbord eller musikinstrument. I detta Instructable k...

Ganska enkel Simon - utvecklingen av en Arduino spel

viktigt meddelande: Final (dvs relevant) version är på det sista steget i detta instructable.Om du vill bygga en Simon, är som den rekommenderade versionen.Resten av steg Visa hur detta utvecklats från en hake spel för LED 13 och seriell (dvs noll ko...

Memory Game Arduino

Detta är en ganska grundläggande version av "Simon säger" spelet, eller minnesspel - där du helt enkelt titta på lysdioder blinkar och klicka på knapparna i rätt ordning för att slutföra nivå och bege dig till nästa.Steg 1: KodenHela koden med s...

Simon Says med lysdioder och ljud

Hej och Välkommen tillbaka till Instructables!Många av oss har alla spelat Simon Says där oundvikligen befinner du dig hopping runt på ett ben medan du gör elefanten ljud och du undrar för sig själv varför det någonsin var en bra idé att säga "Ja, ja...