Jeu de mémoire - génie (2 / 2 étapes)

Étape 2: O Sketch

Código

/ / Vamos Comecar definindo como filhos Notas parágrafo OS

# Définir NOTE_D4 294 # define 392 NOTE_G4 # define 440 NOTE_A4 # define NOTE_A5 880

/ / Preencher o conjunto de para 4 OS filhos parágrafo sortear hum som int toneladas [4] = {NOTE_A5, NOTE_A4, NOTE_G4, NOTE_D4} ; / / De Nossa Sequência mangé 100 itens Vai Comecar Vazia. int sequencia [100] = {} ; / / Indica uma reorientation Atual Que o Jogo se Encontra. int rodada_atual = 0 ; / / Indica o Passo Atual Dentro da Sequência, E USADO enquanto uma Sequência / / ESTA Sendo reproduzida. int passo_atual_na_sequencia = 0 ; / ** Indica o pino de áudio, leds e BOTOES. * Os pinos de leds e BOTOES estao los Ordem, Relacionados uns EAo OUTROS, OU SEJA *, levou O Primeiro AO ESTA relacionado Primeiro Botão. Un destas Ordem * Sequências aussi estao relacionadas a Ordem dos toneladas. * / Int pinoAudio = 6 ; int pinosLeds [4] = {8, 9, 10, 11} ; int pinosBotoes [4] = {2, 3, 4, 5} ;

/ / Indica se hum boucle de diretor pressionado Durante o Botão FOI. int botao_pressionado = 0 ; / / Drapeau indicando se o Jogo acabou. int perdeu_o_jogo = false ;

annuler le programme d’installation () {}

/ / Definindo dos Leds Como Saida du dos pinos du o Modo. pour (int i = 0; j’ai < = 3; J’ai + +) {pinMode (sortie pinosLeds [i]);} / / Definindo dos BOTOES Como Entrada du dos pinos du o Modo. pour (int i = 0; j’ai < = 3; J’ai + +) {pinMode (entrée pinosBotoes [i]);} / / Definindo o Modo fazer pino de Áudio Como Saida. pinMode (pinoAudio, sortie) ; / / Inicializando o acaso atraves de UMA Leitura da porta analógica. . / / Cette gera de Leitura hum valor Variável Entre 0 e 1.023 randomSeed (analogRead (0)) ; }

void loop () {}

/ / Se Perdeu o Jogo reinicializamos Todas como Variáveis. Si (perdeu_o_jogo) {int sequencia [100] = {}; rodada_atual = 0; passo_atual_na_sequencia = 0; perdeu_o_jogo = false;}

/ / Toca hum som de inicio parágrafo anúnicar Que o Jogo ESTA começando lorsque E a Primeira Rodada. Si (rodada_atual == 0) {tocarSomDeInicio (); retard (500);} / / Chama a função qu’inicializa un Próxima Rodada. proximaRodada () ;

/ / Reproduz un Atual Sequência. reproduzirSequencia () ; / / Aguarda OS BOTOES Serem pressionados Pelo Jogador. aguardarJogador () ;

/ / Jogada CADA Segundo Entre Aguarda 1. retarder (1000) ; } / / Sorteia hum novo point de e adiciona na Sequência. vazio proximaRodada () {int numero_sorteado = aléatoire (0, 4); sequencia [rodada_atual + +] = numero_sorteado;} / / Reproduz un memorizada de serviços Sequência para. vazio reproduzirSequencia () {pour (int i = 0; i < rodada_atual ; j’ai + +) {tom (pinoAudio, toneladas [sequencia [i]]); digitalWrite (pinosLeds [sequencia [i]], HIGH) retard (500); noTone (pinoAudio); digitalWrite (pinosLeds [sequencia [i]], LOW); atraso (100) ; NoTone} (pinoAudio) ; }

/ / Aguarda o Jogador iniciar SUA Jogada. vazio aguardarJogador () {pour (int i = 0; i < rodada_atual ; j’ai + +) {aguardarJogada (); verificarJogada () ;

Si (perdeu_o_jogo) {break ; Passo_atual_na_sequencia} + + ; }

/ / Redefinir um Variável parágrafo 0 passo_atual_na_sequencia = 0. ; }

anular aguardarJogada () {jogada_efetuada booléen = false ; while (! jogada_efetuada) {pour (int j’ai = 0; j’ai < = 3; J’ai + +) {si ((digitalRead pinosBotoes [i]) == HIGH) {}

/ / Dizendo quali FOI o Alexandre pressionado. botao_pressionado = i ;

Tom (pinoAudio, toneladas [i]) ; digitalWrite (pinosLeds [i], HIGH) ; retard (300) ; digitalWrite (pinosLeds [i], baixo) ; noTone (pinoAudio) ; jogada_efetuada = true ; }}

atraso (10) ; }}

anular verificarJogada () {si (sequencia [passo_atual_na_sequencia]! = botao_pressionado) {/ / GAME OVER.

pour (int i = 0; i < = 3; J’ai + +) {tom (pinoAudio, toneladas [i]); digitalWrite (pinosLeds [i], HIGH); atraso (200); digitalWrite (pinosLeds [i], baixo); noTone (pinoAudio);} Tom (pinoAudio, toneladas [3]) ; pour (int j’ai = 0; j’ai < = 3; J’ai + +) {digitalWrite (pinosLeds [0], HIGH); digitalWrite (pinosLeds [1], HIGH); digitalWrite (pinosLeds [2], HIGH); digitalWrite (pinosLeds [3], HIGH); atraso (100); digitalWrite (pinosLeds [0], faible); digitalWrite (pinosLeds [1], faible); digitalWrite (pinosLeds [2], LOW); digitalWrite (pinosLeds [3], faible); atraso (100);}

noTone (pinoAudio) ; perdeu_o_jogo = true ; }} Vazio tocarSomDeInicio () {tom (pinoAudio, toneladas [0]) digitalWrite (pinosLeds [0], HIGH) digitalWrite (pinosLeds [1], HIGH); digitalWrite (pinosLeds [2], HIGH); digitalWrite (pinosLeds [3], HIGH); retard (500); digitalWrite (pinosLeds [0], basse); digitalWrite (pinosLeds [1], basse); digitalWrite (pinosLeds [2], faible); digitalWrite (pinosLeds [3], basse); retard (500); noTone (pinoAudio);}

Articles Liés

Jeu de mémoire des souvenirs-transfert des photos vers bois

Jeu de mémoire des souvenirs-transfert des photos vers bois

Le cadeau de Noël que j'ai fait pour ma famille cette année a été un jeu de cartes mémoire. Nous ont toujours joué mémoire ensemble quand nous étions jeunes et encore occasionnellement. Cependant notre jeu de mémoire avant j'ai fait cela a été pour l
Arduino - jeu de mémoire

Arduino - jeu de mémoire

Un simpel-jeu de mémoire à l'aide de l'Arduino Uno.Étape 1: Étape 1: pièces et outils4 boutons4 LED1 Registre à décalage 74HC5951 Piezo2 (peut-être un plus gros) Breadboard1 Arduino Uno1 220 Ω Res.Étape 2: Étape 2: conseilsEssayez d'assembler l'ardui
Jeu de mémoire pour le capteur bricolage Tilt

Jeu de mémoire pour le capteur bricolage Tilt

Comment construire un jeu de mémoire FPGA DIY.Projet d'équipe : Mémoire Blitz. Par : Les Productions peu à peuLaberinto de KimCarver DanaMegan VanHumbeckCe projet est pour nos cours de ECE2220 Digital Logic Systems de l'Université du Manitoba. Inspir
MemAxe - jeu de mémoire des effets sonores 8 bits

MemAxe - jeu de mémoire des effets sonores 8 bits

il s'agit d'Instructable contient tout le code source et de l'information vous devez construire un MemAxe entièrement fonctionnel.Ce qui est MemAxe ?MemAxe est un jeu électronique qui teste votre mémoire en vous rendant à copier une séquence de sons
Jeu de mémoire Altoid Tin

Jeu de mémoire Altoid Tin

fatigué de vos cartes mémoire obtenir rayé, plié et marqué pour que vous sachiez déjà ce qui est sur l'autre côté ?Ne sais pas quoi faire avec tous ces boîtes Altoids vous avez située autour de la maison ?Eh bien, nous avons l'instructable pour vous
Jeu de maths de mémoire en bois Non toxique à la main

Jeu de maths de mémoire en bois Non toxique à la main

J'ai voulu m'essayer à faire un jeu de mémoire en bois pendant une longue période. Ma pensée originale était de créer une série de chiffres 0-9, y compris les symboles mathématiques de base. Amusant et éducatif dans un. Je voulais aussi essayer les m
Jeu de cartes/mémoire réinscriptible Flashcards/Clue

Jeu de cartes/mémoire réinscriptible Flashcards/Clue

Cartes Flash sont parfaits pour les enfants à apprendre leurs lettres, leur nombre et leur "sight words". Malheureusement, les cartes flash obtenir plié, déchiré et sale très rapidement. J'ai créé un détenteur de carte flash que je pouvais le la
Jeu VHDL: LED - bouton Push jeu Instructable

Jeu VHDL: LED - bouton Push jeu Instructable

Bienvenue ! Il s'agit une instructable pour créer un jeu simple de VHDL en utilisant les LEDs et les boutons que nous avons appelé PushPace. Avant de continuer, Voici les antécédents et l'inspiration derrière le jeu.Arrière-plan Si vous avez grandi d
Toile Programmable LED interactif

Toile Programmable LED interactif

L'objectif de ce projet était d'aller un peu plus loin avec la toile personnalisée. Il en coûtera un peu plus, mais le potentiel est beaucoup plus grand pour cette conceptionÉtape 1: théorieLED blanche résistance CalcVCE = 0, 3VChute de tension LED =
IcosaLEDron : Un Multi LED Smart Ball

IcosaLEDron : Un Multi LED Smart Ball

Ce qui est un IcosaLEDron ? C'est une programmable, rechargeables 20 faces « boule » avec une LED RGB sur chaque face. À l'intérieur est un PCB personnalisé équipé de la Atmega328p qui est Arduino compatible permettant la programmation facile des eff
Construction d’une tourelle de Portal avec audio mouvement contrôlé et éclairage

Construction d’une tourelle de Portal avec audio mouvement contrôlé et éclairage

dans ce Instructable je vais vous montrer comment je suis allé sur la création de ma propre vie taille parler portail tourelle de bout en bout. Il s'agit d'une profondeur assez en projet qui permettra de couvrir toutes les étapes de construction et t
Butt lumière

Butt lumière

La lumière de Butt (oui je sais, ringard), est sur l'élément matériel d'introduire vous-même, vos enfants et tout le monde dans le monde merveilleux des microcontrôleurs plus élémentaire. L'ensemble du projet n'a aucun entrée et seulement une sortie
Cible électronique escrime

Cible électronique escrime

comment génial ce serait si vous pouvez construire quelque chose qui vous aide à former à l'escrime et de s'amuser en même temps, bon!?,Mon nom est Enrique Alvarez, je suis le maître d'escrime pour le Club d'escrime de Fargo-Moorhead et j'étais fatig
Jeux de course de voiture

Jeux de course de voiture

ces trois jeux sont mes entrées pour The sont nous là encore Challenge, donc si vous aimez les jeux s'il vous plaît votez.Ma famille et j'ai jouer ces tout le temps et sont un excellent moyen pour passer le temps sur le parcours.1. le nom de célébrit