Simon Game - Xylophone Version

une petite interface de jeu j’ai fais... essentiellement, ce sera le jeu de simon... sauf beaucoup plus dur et le xylophone style:)

(Pour ceux qui ne connaissent pas, le jeu de simon est le suivant :
http://www.youtube.com/watch?v=4YhVyt4q5HI)

Matériaux / outils sont assez simple...

J’ai utilisé un cutter laser, mais vous pouvez le faire manuellement
Contreplaqué
Acrylique
Arduino UNO
8 capteurs Piezo
8 LED

Code temporaire a été mis en place, manque son mais cela viendra assez vite

Vidéo rapide, jour et nuit
http://www.youtube.com/watch?v=ZcibT5wFgy4&feature=youtu.be

Remarque : Sauf si vous vous sentez confortablement avec codage et jouer avec les différentes résistances, je donnerais avise pour que cela soit dans une plus grande échelle !
Exemple : par

[code]
const int buttonSensor = A5 ;

led1 int = 5 ; Broches de la LED
led2 int = 4 ;
led3 int = 3 ;
led4 int = 2 ;
Tournez int = 0 ;
int inputRead = 0 ;
/ * int input2 = faible ;
int input3 = faible ;
int input4 = bas; * /

int randomArray [50] ; Intentionnellement de long pour stocker jusqu'à 100 entrées (douteux n’importe qui obtiendra ce jour)
int inputArray [50] ;

void setup() {}

Serial.Begin(9600) ;

pinMode (led1, sortie) ;
pinMode (led2, sortie) ;
pinMode (DEL3, sortie) ;
pinMode (led4, sortie) ;

randomSeed(analogRead(0)) ; Ajouté pour générer « plus aléatoire » avec le randomArray pour la fonction de sortie

pour (int y = 0; y < = 99; y ++) {//For déclaration à effectuer une boucle sur les fonctions d’entrée et de sortie
Output() ;
Input() ;
}

}

void loop() {//Unused void loop(), si pour une raison quelconque ils ne compilent pas sans cette /shrug

}

Sub output() {//function pour générer le tableau soit mis en correspondance par le joueur

pour (int y = virage; y < = virage; y ++) {//Limited de la variable de la tour
Serial.println("") ; Une sortie série à suivre le long
Serial.Print ("tourner:") ;
Serial.Print(y) ;
Serial.println("") ;
randomArray [y] = aléatoire (1, 5) ; Vous affectez un nombre aléatoire (1-4) à la randomArray [y], y étant la tour compter
pour (int x = 0; x < = virage; x ++) {}

Serial.Print(randomArray[x]) ;

Si (randomArray [x]
== 1) {//if déclarations pour afficher les valeurs stockées dans le tableau
digitalWrite (led1, HIGH) ;
Delay(500) ;
digitalWrite (led1, faible) ;
Delay(100) ;
}

Si (randomArray [x]
== 2) {
digitalWrite (led2, HIGH) ;
Delay(500) ;
digitalWrite (led2, faible) ;
Delay(100) ;
}

Si (randomArray [x]
== 3) {
digitalWrite (DEL3, HIGH) ;
Delay(500) ;
digitalWrite (DEL3, faible) ;
Delay(100) ;
}

Si (randomArray [x]
== 4) {
digitalWrite (led4, HIGH) ;
Delay(500) ;
digitalWrite (led4, faible) ;
Delay(100) ;
}
}
}
}



input() Sub {//Function pour permettre l’entrée d’utilisateur et vérification d’entrée contre le tableau généré

pour (int x = 0; x < = tourner;){//Statement commandée par le comte de la tour
/ * input1 = digitalRead(switch1) ;
INPUT2 = digitalRead(switch2) ;
INPUT3 = digitalRead(switch3) ;
4 = digitalRead(switch4); * /

inputRead = analogRead(buttonSensor) ;
Serial.println(inputRead) ;
Delay(100) ;

Si (inputRead > 685) {//Checking pour pousser le bouton
digitalWrite (led1, HIGH) ;
playTone(1915, 200) ; //Passes ton valeur et durée de la tonalité à la fonction playTone
Delay(200) ;
digitalWrite (led1, faible) ;
inputArray [x] = 1 ;
Delay(50) ;
Serial.Print("") ;
Serial.Print(1) ;
Si (inputArray [x]! = randomArray[x]) {//Checks valeur entrée par l’utilisateur et le vérifie contre
Fail() ;                              la valeur au même endroit sur le tableau généré
} Function fail //The est appelée si elle ne correspond pas
x ++ ;
}

Si ((inputRead > 600) & & (inputRead < 680)) {}
digitalWrite (led2, HIGH) ;
Delay(200) ;
digitalWrite (led2, faible) ;
inputArray [x]
= 2 ;
Delay(50) ;
Serial.Print("") ;
Serial.Print(2) ;
Si (inputArray [x]
! = randomArray [x]
) {
Fail() ;
}
x ++ ;

}

Si ((inputRead > 535) & & (inputRead < 590)) {}
digitalWrite (DEL3, HIGH) ;
Delay(200) ;
digitalWrite (DEL3, faible) ;
inputArray [x]
= 3 ;
Delay(50) ;
Serial.Print("") ;
Serial.Print(3) ;
Si (inputArray [x]
! = randomArray [x]
) {
Fail() ;
}
x ++ ;

}

Si ((inputRead > 400) & & (inputRead < 525)) {}

digitalWrite (led4, HIGH) ;
Delay(200) ;
digitalWrite (led4, faible) ;
inputArray [x]
= 4 ;
Delay(50) ;
Serial.Print("") ;
Serial.Print(4) ;
Si (inputArray [x]
! = randomArray [x]
) {
Fail() ;

Serial.Print("Failed") ;
}
x ++ ;

}

}
Delay(500) ;
tour ++ ; Incrémente le nombre de tour, aussi la dernière action avant de démarrer la fonction sortie maintes fois
}

fail() Sub {//Function utilisé si le joueur ne peut pas correspondre à la séquence

pour (int y = 0; y < = 5; y ++) {//Flashes s’allume pour défaut
digitalWrite (led1, HIGH) ;
digitalWrite (led2, HIGH) ;
digitalWrite (DEL3, HIGH) ;
digitalWrite (led4, HIGH) ;
Delay(200) ;
digitalWrite (led1, faible) ;
digitalWrite (led2, faible) ;
digitalWrite (DEL3, faible) ;
digitalWrite (led4, faible) ;
Delay(200) ;
}
Delay(500) ;
tourner = -1 ; Réinitialisations tourner valeur jusqu'à ce que le jeu recommence sans avoir besoin d’un bouton de réinitialisation
} [/ code]

Articles Liés

Simon Game

Simon Game

Description:Il s'agit d'une version d'à travers-trou de populaire de Sparkfun kit de surface mount Simon. Cette nouvelle version vient avec un ATmega328 au lieu de l'ATmega168. Tous les composants sont à travers-trou, rendant ce kit excellent pour le
Comment : Simon Game

Comment : Simon Game

Il s'agit d'une instructable sur la façon de mettre sur pied le Jeu Simon - Kit de soudure à travers-trou de Sparkfun.com selon leurs instructionsÉtape 1: Étape 1: équipementDans le kit, vous devriez recevoir• 1 x ATmega328-pré-programmés avec firmwa
Assez Simple Simon - l’évolution d’un jeu d’Arduino

Assez Simple Simon - l’évolution d’un jeu d’Arduino

Avis Important : Final (c'est-à-dire pertinent) est à la dernière étape de cette instructable.Si vous voulez construire un Simon, qu'est la version recommandée.Le reste de la série d'étapes comment cela a évolué d'un jeu rudimentaire pour LED13 et sé
Total Recall - Arduino Simon Says sur stéroïdes !

Total Recall - Arduino Simon Says sur stéroïdes !

Total Recall est un Simon jeu basé pour l'Arduino. Votre base Arduino Simon Game se compose de 4 boutons, 4 LEDs, un Arduino, certains codes et peut-être un orateur et effets sonores. Total Recall prend les choses un peu plus loin en ajoutant un écra
Pokemon Cheat : Obtenir illimité rares bonbons

Pokemon Cheat : Obtenir illimité rares bonbons

Pokemon est trop dur pour vous ? Avec ce code triche, vous serez en mesure d'obtenir illimités rares bonbons et obtenir votre Pokemon au niveau 100.Matériel nécessaire :Game BoyVersion de Pokémon rouge ou bleue1 bonbon rarePokemon qui peut volerPokem
Castle Siege ! (La "version tapis" du « Artillerie » PC-game)

Castle Siege ! (La "version tapis" du « Artillerie » PC-game)

Je suis un fan de jeu artilerie graves ; C'est le jeu avec ces petites citernes, tir à l'autre en 2 dimensions sur belles arches balistiques. Peut-être le titre plus célèbre est la « terre de Schorched » ou le 'obusier". Certains d'entre eux sont con
Simon Says game

Simon Says game

J'ai créé un jeu de mémoire électronique dans le style de « Simon Says » (une icône des années 70). Il est basé sur un ARM cortex M0 microcontrôleur. Vous y trouverez un manuel détaillé de construction, schémas électriques et code source sur mon site
Game Boy Advance Dock (Version italienne)

Game Boy Advance Dock (Version italienne)

Questo é il mio quai costruito con un Game Boy Advance ! Connesso con una presa usb, iPod/iPhone de può ricaricare la maggior parte degli. Prossimamente la guida passo dopo passo.
Amélioré le Code « Simon dit »

Amélioré le Code « Simon dit »

Un projet de 'Simple Simon' mise à jour.Plus précisément, plus facile de travailler avec la mise en œuvre logicielle.Étape 1: Mise en routeJ'ai commencé avec l'instructable à « Simple-Simon-dit-Game »Référence pour la mise en œuvre matérielle général
Memory Game Arduino

Memory Game Arduino

Il s'agit d'une version très basique du jeu « Simon dit », ou jeu de mémoire - où vous simplement regarder le voyants clignotent et cliquez sur les boutons dans l'ordre correct pour terminer le niveau et se dirigent vers celle qui suit.Etape 1: Le co
Smart board game

Smart board game

Pour un projet scolaire j'et camarade faisons un jeu intelligent. Nous faisons des différentes parties du jeu de société intelligent. Je vais faire l'unité principale du jeu. Wil a faire les mini-jeux un peu compliqués. Le jeu est entièrement fonctio
Livre de scintillement DIY Gamer

Livre de scintillement DIY Gamer

Marre de regarder un écran. Allez analogique et faire votre propre livre de scintillement Gamer bricolage papier. Dessiner votre animation image par image sur le modèle téléchargeable et obtenir des colorants. Le DIY Gamer a seulement un écran d'une
Xylophone de wifi Spark.IO Build nuit Rex-o-Phone

Xylophone de wifi Spark.IO Build nuit Rex-o-Phone

Nos nuits de construire étincelle le 13 novembre et 15 2014 Blooming-Labs ont beaucoup de plaisir grâce à Spark.io et Instructables pour rendre la nuit construire possible ! Je construisais un glockenspiel joué par solénoïdes d'un piano de joueur alo
BICITRACTOR B300 (POC21 Version, attendez la prochaine Version en février si vous voulez construire un)

BICITRACTOR B300 (POC21 Version, attendez la prochaine Version en février si vous voulez construire un)

Ce qui est Bicitractor ?Le Bicitractor est un tracteur agricole à pédale avec assistance électrique, réalisé par les agriculteurs pour les agriculteurs. Il est destiné de fermes maraîchères de petite et moyenne. Il permet différentes tâches agricoles