Jeu de réflexes

De Wikidebrouillard.

Article incomplet en cours de rédaction
La vidéo "Jeu de réflexes"

Sommaire

Présentation du projet Arduino

Le jeu de réflexes est un montage facile et ludique à réaliser avec l'Arduino pour débuter. Il se joue à deux, le premier à marquer 5 points gagne la partie.

Liste du matériel

réalisation du projet

Etape 1 : Télécharger l'IDE Arduino sur le lien suivant Download

Etape 2 : Réaliser le montage complet grâce à la vidéo donnée : Les étapes du montage sont montrées pas à pas. Le schéma Fritzing est donné également pour plus de compréhension. Les LEDs sont câblées toujours en série avec des résistances afin de les protéger (de même pour les boutons poussoirs). Vérifier bien le montage avant de le relier à l'ordinateur.

Etape 3 : Relier le montage à l'ordinateur puis téléverser le code donné plus bas

C'est prêt !

Explication

Ce montage permet d'acquérir des réflexes grâce à un petit jeu à 2 joueurs. La LED jaune du milieu s'allume : les joueurs doivent appuyer le plus vite possible sur leur bouton. La LED verte du joueur qui a été le plus rapide à appuyer s'allume alors. Un joueur gagne s'il a atteint le nombre de 5 victoires.(LED verte allumée 5 fois).

Un message est envoyé à la console pour dire qui a gagné.

Schéma Fritzing

Code


int ledm=12; //Led du Milieu
int ledd=11; // Led de Droide
int ledg=13; // Led de Gauche
int victd=0; // compteur victoire joueur de droite
int victg=0; // compteur victoire joueur de gauche
void setup() {
  Serial.begin(9600);
  pinMode(ledm, OUTPUT);
  pinMode(ledd, OUTPUT);
  pinMode(ledg, OUTPUT);
  pinMode(9, INPUT);
  pinMode(10, INPUT);
}

void loop() {
  Serial.println("**** PRET ? *****");
  
  digitalWrite(ledm, LOW);    // set the LED off
  digitalWrite(ledd, LOW);    // set the LED off
  digitalWrite(ledg, LOW);
  int t = random(1,9);
  delay(t*500);     // delai d'attente entre 1 x 500ms et 9 x 500ms
  digitalWrite(ledm, HIGH);   // set the LED on

  int s1 = 0;
  int s2 = 0;
  while (!s1 && !s2) {
  s1=digitalRead(9);  //
  s2=digitalRead(10);  //
  }

  if(s1 && !s2) {
    digitalWrite(ledd, HIGH);   // set the LED on
    digitalWrite(ledg, LOW);   // set the LED off
    victd++;  // le joueur de droite a appuyer avant le joueur de gauche, on incremente le nbre de victoire
  }
  else if(!s1 && s2) {
    digitalWrite(ledd, LOW);   // set the LED off
    digitalWrite(ledg, HIGH);   // set the LED on
    victg++;
  }else {
    digitalWrite(ledd, HIGH);   // set the LED on
    digitalWrite(ledg, HIGH);   // set the LED on
  }
  delay(200);              // wait for a second

if (victd==5) {
  Serial.println("joueur de droite gagne");
  Serial.print("Joueur Droite");
  Serial.println(victd);
  Serial.print("Joueur Gauche");
  Serial.println(victg);
  victd=0;
  victg=0;
}
if (victg==5) {
  Serial.println("joueur de gauche gagne");
  Serial.print("Joueur Droite");
  Serial.println(victd);
  Serial.print("Joueur Gauche");
  Serial.println(victg);
  victd=0;
  victg=0;
}
}



Liens avec d'autres projets arduino

chercher ici : http://wikidebrouillard.org/index.php/Catégorie:Arduino

Pour aller plus loin

Possibilité de jouer avec deux couleurs (rajouter une LED et deux boutons poussoirs : il faudra appuyer sur le bouton correspondant à la bonne couleur de LED). Il faut alors modifier le code en conséquence en prenant exemple sur le code déjà donné.

Un afficheur 7 segments peut aussi être utilisé afin d'afficher le score des joueurs.

Liens avec le quotidien

Le MonoPong

Portail des ExplorateursWikidébrouillardLéon DitFLOGPhoto mystèreJ'ai FaitPortraitsAnnuaire
AR
CO

Jeu de réflexes

Rechercher

Page Discussion Historique
Powered by MediaWiki
Creative Commons - Paternite Partage a l

© Graphisme : Les Petits Débrouillards Grand Ouest (Patrice Guinche - Jessica Romero) | Développement web : Libre Informatique