<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
		<id>http://wiki.lesfabriquesduponant.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Antoine+Brusco</id>
		<title>Les Fabriques du Ponant - Contributions de l’utilisateur [fr]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.lesfabriquesduponant.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Antoine+Brusco"/>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Sp%C3%A9cial:Contributions/Antoine_Brusco"/>
		<updated>2026-05-15T19:47:48Z</updated>
		<subtitle>Contributions de l’utilisateur</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12926</id>
		<title>ENIB 2020 : Tûk</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12926"/>
				<updated>2020-01-17T13:46:23Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : /* photo de l'équipe */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==photo de l'équipe==&lt;br /&gt;
[[Fichier:Equipe tûk.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Que fait ce projet ? ==&lt;br /&gt;
Tûk est un jeu de mémoire très inspiré du jeu Simon.&lt;br /&gt;
Le principe du jeu se résume à suivre une séquence de couleurs données par le jeu.&lt;br /&gt;
Par exemple, si la première couleur qui s'allume est le jaune. Le joueur doit donc appuyer sur le bouton jaune. Puis Tûk rajoute des couleurs au fur et à mesure que le joueur réussi à répéter les séquences.&lt;br /&gt;
La séquence est réinitialisée à une couleur et la partie redémarre.&lt;br /&gt;
==Liste des composants==&lt;br /&gt;
&lt;br /&gt;
* 1 carte Arduino&lt;br /&gt;
* 4 boutons poussoirs de couleur différentes&lt;br /&gt;
* 4 LED de même couleur que les boutons&lt;br /&gt;
* 1 haut-parleur&lt;br /&gt;
* des câbles &lt;br /&gt;
* une boîte faite maison (medium 3mm)&lt;br /&gt;
* 1 pain de câblage&lt;br /&gt;
* 1 support batterie&lt;br /&gt;
* 1 pile rechargeable&lt;br /&gt;
* 4 résistances de 1kΩ&lt;br /&gt;
* 4 résistances de 10kΩ&lt;br /&gt;
&lt;br /&gt;
==Montage==&lt;br /&gt;
[[Fichier:Cablage tûk.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/*Created by Jeremy Wilson &lt;br /&gt;
&lt;br /&gt;
Memory Game with Arduino&lt;br /&gt;
&lt;br /&gt;
Modified by Rui Santos&lt;br /&gt;
Visit: http://randomnerdtutorials.com&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
// Constants&lt;br /&gt;
const int button1 = 2;          // 1st button controls Blue LED &lt;br /&gt;
const int button2 = 3;          // 2nd button controls Yellow LED&lt;br /&gt;
const int button3 = 4;          // 3rd button controls Green LED&lt;br /&gt;
const int button4 = 5;          // 4th button controls Red LED&lt;br /&gt;
const int led1 = 7;             // Blue LED&lt;br /&gt;
const int led2 = 8;             // Yellow LED&lt;br /&gt;
const int led3 = 9;             // Green LED&lt;br /&gt;
const int led4 = 10;            // Red LED&lt;br /&gt;
const int buzzer = 12;          // Buzzer Output&lt;br /&gt;
const int tones[] = {1915, 1700, 1519, 1432, 2700}; // tones when you press the LED's - the last one is when you fail.&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
int buttonState[] = {0,0,0,0};         // current state of the button&lt;br /&gt;
int lastButtonState[] = {0,0,0,0};     // previous state of the button&lt;br /&gt;
int buttonPushCounter[] = {0,0,0,0}; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void playTone(int tone, int duration) {&lt;br /&gt;
  for (long i = 0; i &amp;lt; duration * 1000L; i += tone * 2) {&lt;br /&gt;
    digitalWrite(buzzer, HIGH);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
    digitalWrite(buzzer, LOW);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // initialize inputs :&lt;br /&gt;
  randomSeed(analogRead(0));&lt;br /&gt;
  pinMode(button1, INPUT);&lt;br /&gt;
  pinMode(button2, INPUT);&lt;br /&gt;
  pinMode(button3, INPUT);&lt;br /&gt;
  pinMode(button4, INPUT);&lt;br /&gt;
  // initialize outputs:&lt;br /&gt;
  pinMode(led1, OUTPUT);&lt;br /&gt;
  pinMode(led2, OUTPUT);&lt;br /&gt;
  pinMode(led3, OUTPUT);&lt;br /&gt;
  pinMode(led4, OUTPUT);&lt;br /&gt;
  pinMode(buzzer, OUTPUT);&lt;br /&gt;
  // initialize serial communication for debugging:&lt;br /&gt;
  //Serial.begin(9600); &lt;br /&gt;
}&lt;br /&gt;
int game_on = 0;&lt;br /&gt;
int wait = 0;&lt;br /&gt;
int currentlevel = 1; // This is the level (also the number of button presses to pass to next level)&lt;br /&gt;
long rand_num = 0; //initialize long variable for random number from 0-100.&lt;br /&gt;
int rando = 0; //initialize random integer for loopgame_on. Will be from 1-4 later.&lt;br /&gt;
int butwait = 500; //amount of time to wait for next button input (ghetto de-bounce)&lt;br /&gt;
int ledtime = 500; //amount of time each LED flashes for when button is pressed&lt;br /&gt;
int n_levels = 10; //number of levels until the game is won&lt;br /&gt;
int pinandtone = 0; //This integer is used when the sequence is displayed&lt;br /&gt;
int right = 0; //This variable must be 1 in order to go to the next level&lt;br /&gt;
int speedfactor = 5; //This is the final speed of the lights and sounds for the last level. This increases as more games are won&lt;br /&gt;
int leddelay = 200; //Initializing time for LED. This will decrease as the level increases&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
  &lt;br /&gt;
int n_array[n_levels];&lt;br /&gt;
int u_array[n_levels];&lt;br /&gt;
&lt;br /&gt;
int i;&lt;br /&gt;
//clears arrays both &amp;quot;n_array&amp;quot; and &amp;quot;u_array&amp;quot; and starts a new game&lt;br /&gt;
if (game_on == 0){&lt;br /&gt;
for(i=0; i&amp;lt;n_levels; i=i+1){&lt;br /&gt;
        n_array[i]=0;&lt;br /&gt;
        u_array[i]=0;&lt;br /&gt;
        rand_num = random(1,200);&lt;br /&gt;
        if (rand_num &amp;lt;= 50)&lt;br /&gt;
          rando=0;&lt;br /&gt;
        else if (rand_num&amp;gt;50 &amp;amp;&amp;amp; rand_num&amp;lt;=100)&lt;br /&gt;
          rando=1;&lt;br /&gt;
        else if (rand_num&amp;gt;100 &amp;amp;&amp;amp; rand_num&amp;lt;=150)&lt;br /&gt;
          rando=2;&lt;br /&gt;
         else if (rand_num&amp;lt;=200)&lt;br /&gt;
          rando=3;&lt;br /&gt;
        //saves a random number in our n_array&lt;br /&gt;
         n_array[i]=rando;&lt;br /&gt;
      }&lt;br /&gt;
 game_on = 1; &lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//shows the user the current sequence&lt;br /&gt;
if (wait == 0){&lt;br /&gt;
 delay (200);&lt;br /&gt;
i = 0;&lt;br /&gt;
for (i = 0; i &amp;lt; currentlevel; i= i + 1){&lt;br /&gt;
  leddelay = ledtime/(1+(speedfactor/n_levels)*(currentlevel - 1));&lt;br /&gt;
      pinandtone = n_array[i];&lt;br /&gt;
      digitalWrite(pinandtone+7, HIGH);&lt;br /&gt;
      playTone(tones[pinandtone], leddelay);&lt;br /&gt;
      digitalWrite(pinandtone+7, LOW);&lt;br /&gt;
      delay(100/speedfactor);&lt;br /&gt;
    }&lt;br /&gt;
    wait = 1;&lt;br /&gt;
}&lt;br /&gt;
i = 0;&lt;br /&gt;
int buttonchange = 0;    &lt;br /&gt;
int j = 0; // This is the current position in the sequence&lt;br /&gt;
while (j &amp;lt; currentlevel){    &lt;br /&gt;
    while (buttonchange == 0){&lt;br /&gt;
          for (i = 0; i &amp;lt; 4; i = i + 1){ &lt;br /&gt;
          buttonState[i] = digitalRead(i+2);&lt;br /&gt;
          buttonchange = buttonchange + buttonState[i];&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
     for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
        if (buttonState[i] == HIGH) {&lt;br /&gt;
            digitalWrite(i+7, HIGH);&lt;br /&gt;
            playTone(tones[i], ledtime);&lt;br /&gt;
            digitalWrite(i+7, LOW);&lt;br /&gt;
            wait = 0;&lt;br /&gt;
            u_array[j]=i; &lt;br /&gt;
            buttonState[i] = LOW;&lt;br /&gt;
            buttonchange = 0;&lt;br /&gt;
         }&lt;br /&gt;
       } &lt;br /&gt;
        if (u_array[j] == n_array[j]){&lt;br /&gt;
            j++;  &lt;br /&gt;
            right = 1;&lt;br /&gt;
            }&lt;br /&gt;
        else{&lt;br /&gt;
          &lt;br /&gt;
            right = 0;&lt;br /&gt;
            i = 4;&lt;br /&gt;
            j = currentlevel;&lt;br /&gt;
            wait = 0;&lt;br /&gt;
        }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if (right == 0){&lt;br /&gt;
  delay(300);&lt;br /&gt;
  i = 0;&lt;br /&gt;
  game_on = 0;&lt;br /&gt;
  currentlevel = 1;&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       delay (200);&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       &lt;br /&gt;
       delay(500);&lt;br /&gt;
       game_on = 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//if you insert the right sequence it levels up&lt;br /&gt;
if (right == 1){&lt;br /&gt;
    currentlevel++;&lt;br /&gt;
    wait = 0;&lt;br /&gt;
    }&lt;br /&gt;
//if you finish the game    &lt;br /&gt;
if (currentlevel == n_levels){&lt;br /&gt;
  delay(500);&lt;br /&gt;
  // The following is the victory sound:&lt;br /&gt;
  int notes[] = {2, 2, 2, 2, 0, 1, 2, 1, 2};&lt;br /&gt;
  int note = 0;&lt;br /&gt;
  int tempo[] = {200, 200, 200, 400, 400, 400, 200, 200, 600}; &lt;br /&gt;
  int breaks[] = {100, 100, 100, 200, 200, 200, 300, 100, 200}; &lt;br /&gt;
  for (i = 0; i &amp;lt; 9; i = i + 1){&lt;br /&gt;
  note = notes[i];&lt;br /&gt;
    digitalWrite(note+7, HIGH);&lt;br /&gt;
    playTone(tones[note], tempo[i]);&lt;br /&gt;
    digitalWrite(note+7, LOW);&lt;br /&gt;
    delay(breaks[i]);&lt;br /&gt;
  }&lt;br /&gt;
//sets game_on to 0, so it restarts a new game&lt;br /&gt;
game_on = 0;&lt;br /&gt;
currentlevel = 1;&lt;br /&gt;
n_levels = n_levels + 2;&lt;br /&gt;
speedfactor = speedfactor + 1;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Prototype==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Tûk v1 dessus.jpg|600px]]&lt;br /&gt;
[[Fichier:Cablage tûk dessus.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2020]]&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Equipe_t%C3%BBk.jpg&amp;diff=12925</id>
		<title>Fichier:Equipe tûk.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Equipe_t%C3%BBk.jpg&amp;diff=12925"/>
				<updated>2020-01-17T13:45:53Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12921</id>
		<title>ENIB 2020 : Tûk</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12921"/>
				<updated>2020-01-17T13:40:13Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==photo de l'équipe==&lt;br /&gt;
[[Fichier:Photoenib2018.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Que fait ce projet ? ==&lt;br /&gt;
Tûk est un jeu de mémoire très inspiré du jeu Simon.&lt;br /&gt;
Le principe du jeu se résume à suivre une séquence de couleurs données par le jeu.&lt;br /&gt;
Par exemple, si la première couleur qui s'allume est le jaune. Le joueur doit donc appuyer sur le bouton jaune. Puis Tûk rajoute des couleurs au fur et à mesure que le joueur réussi à répéter les séquences.&lt;br /&gt;
La séquence est réinitialisée à une couleur et la partie redémarre.&lt;br /&gt;
==Liste des composants==&lt;br /&gt;
&lt;br /&gt;
* 1 carte Arduino&lt;br /&gt;
* 4 boutons poussoirs de couleur différentes&lt;br /&gt;
* 4 LED de même couleur que les boutons&lt;br /&gt;
* 1 haut-parleur&lt;br /&gt;
* des câbles &lt;br /&gt;
* une boîte faite maison (medium 3mm)&lt;br /&gt;
* 1 pain de câblage&lt;br /&gt;
* 1 support batterie&lt;br /&gt;
* 1 pile rechargeable&lt;br /&gt;
* 4 résistances de 1kΩ&lt;br /&gt;
* 4 résistances de 10kΩ&lt;br /&gt;
&lt;br /&gt;
==Montage==&lt;br /&gt;
[[Fichier:Cablage tûk.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/*Created by Jeremy Wilson &lt;br /&gt;
&lt;br /&gt;
Memory Game with Arduino&lt;br /&gt;
&lt;br /&gt;
Modified by Rui Santos&lt;br /&gt;
Visit: http://randomnerdtutorials.com&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
// Constants&lt;br /&gt;
const int button1 = 2;          // 1st button controls Blue LED &lt;br /&gt;
const int button2 = 3;          // 2nd button controls Yellow LED&lt;br /&gt;
const int button3 = 4;          // 3rd button controls Green LED&lt;br /&gt;
const int button4 = 5;          // 4th button controls Red LED&lt;br /&gt;
const int led1 = 7;             // Blue LED&lt;br /&gt;
const int led2 = 8;             // Yellow LED&lt;br /&gt;
const int led3 = 9;             // Green LED&lt;br /&gt;
const int led4 = 10;            // Red LED&lt;br /&gt;
const int buzzer = 12;          // Buzzer Output&lt;br /&gt;
const int tones[] = {1915, 1700, 1519, 1432, 2700}; // tones when you press the LED's - the last one is when you fail.&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
int buttonState[] = {0,0,0,0};         // current state of the button&lt;br /&gt;
int lastButtonState[] = {0,0,0,0};     // previous state of the button&lt;br /&gt;
int buttonPushCounter[] = {0,0,0,0}; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void playTone(int tone, int duration) {&lt;br /&gt;
  for (long i = 0; i &amp;lt; duration * 1000L; i += tone * 2) {&lt;br /&gt;
    digitalWrite(buzzer, HIGH);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
    digitalWrite(buzzer, LOW);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // initialize inputs :&lt;br /&gt;
  randomSeed(analogRead(0));&lt;br /&gt;
  pinMode(button1, INPUT);&lt;br /&gt;
  pinMode(button2, INPUT);&lt;br /&gt;
  pinMode(button3, INPUT);&lt;br /&gt;
  pinMode(button4, INPUT);&lt;br /&gt;
  // initialize outputs:&lt;br /&gt;
  pinMode(led1, OUTPUT);&lt;br /&gt;
  pinMode(led2, OUTPUT);&lt;br /&gt;
  pinMode(led3, OUTPUT);&lt;br /&gt;
  pinMode(led4, OUTPUT);&lt;br /&gt;
  pinMode(buzzer, OUTPUT);&lt;br /&gt;
  // initialize serial communication for debugging:&lt;br /&gt;
  //Serial.begin(9600); &lt;br /&gt;
}&lt;br /&gt;
int game_on = 0;&lt;br /&gt;
int wait = 0;&lt;br /&gt;
int currentlevel = 1; // This is the level (also the number of button presses to pass to next level)&lt;br /&gt;
long rand_num = 0; //initialize long variable for random number from 0-100.&lt;br /&gt;
int rando = 0; //initialize random integer for loopgame_on. Will be from 1-4 later.&lt;br /&gt;
int butwait = 500; //amount of time to wait for next button input (ghetto de-bounce)&lt;br /&gt;
int ledtime = 500; //amount of time each LED flashes for when button is pressed&lt;br /&gt;
int n_levels = 10; //number of levels until the game is won&lt;br /&gt;
int pinandtone = 0; //This integer is used when the sequence is displayed&lt;br /&gt;
int right = 0; //This variable must be 1 in order to go to the next level&lt;br /&gt;
int speedfactor = 5; //This is the final speed of the lights and sounds for the last level. This increases as more games are won&lt;br /&gt;
int leddelay = 200; //Initializing time for LED. This will decrease as the level increases&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
  &lt;br /&gt;
int n_array[n_levels];&lt;br /&gt;
int u_array[n_levels];&lt;br /&gt;
&lt;br /&gt;
int i;&lt;br /&gt;
//clears arrays both &amp;quot;n_array&amp;quot; and &amp;quot;u_array&amp;quot; and starts a new game&lt;br /&gt;
if (game_on == 0){&lt;br /&gt;
for(i=0; i&amp;lt;n_levels; i=i+1){&lt;br /&gt;
        n_array[i]=0;&lt;br /&gt;
        u_array[i]=0;&lt;br /&gt;
        rand_num = random(1,200);&lt;br /&gt;
        if (rand_num &amp;lt;= 50)&lt;br /&gt;
          rando=0;&lt;br /&gt;
        else if (rand_num&amp;gt;50 &amp;amp;&amp;amp; rand_num&amp;lt;=100)&lt;br /&gt;
          rando=1;&lt;br /&gt;
        else if (rand_num&amp;gt;100 &amp;amp;&amp;amp; rand_num&amp;lt;=150)&lt;br /&gt;
          rando=2;&lt;br /&gt;
         else if (rand_num&amp;lt;=200)&lt;br /&gt;
          rando=3;&lt;br /&gt;
        //saves a random number in our n_array&lt;br /&gt;
         n_array[i]=rando;&lt;br /&gt;
      }&lt;br /&gt;
 game_on = 1; &lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//shows the user the current sequence&lt;br /&gt;
if (wait == 0){&lt;br /&gt;
 delay (200);&lt;br /&gt;
i = 0;&lt;br /&gt;
for (i = 0; i &amp;lt; currentlevel; i= i + 1){&lt;br /&gt;
  leddelay = ledtime/(1+(speedfactor/n_levels)*(currentlevel - 1));&lt;br /&gt;
      pinandtone = n_array[i];&lt;br /&gt;
      digitalWrite(pinandtone+7, HIGH);&lt;br /&gt;
      playTone(tones[pinandtone], leddelay);&lt;br /&gt;
      digitalWrite(pinandtone+7, LOW);&lt;br /&gt;
      delay(100/speedfactor);&lt;br /&gt;
    }&lt;br /&gt;
    wait = 1;&lt;br /&gt;
}&lt;br /&gt;
i = 0;&lt;br /&gt;
int buttonchange = 0;    &lt;br /&gt;
int j = 0; // This is the current position in the sequence&lt;br /&gt;
while (j &amp;lt; currentlevel){    &lt;br /&gt;
    while (buttonchange == 0){&lt;br /&gt;
          for (i = 0; i &amp;lt; 4; i = i + 1){ &lt;br /&gt;
          buttonState[i] = digitalRead(i+2);&lt;br /&gt;
          buttonchange = buttonchange + buttonState[i];&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
     for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
        if (buttonState[i] == HIGH) {&lt;br /&gt;
            digitalWrite(i+7, HIGH);&lt;br /&gt;
            playTone(tones[i], ledtime);&lt;br /&gt;
            digitalWrite(i+7, LOW);&lt;br /&gt;
            wait = 0;&lt;br /&gt;
            u_array[j]=i; &lt;br /&gt;
            buttonState[i] = LOW;&lt;br /&gt;
            buttonchange = 0;&lt;br /&gt;
         }&lt;br /&gt;
       } &lt;br /&gt;
        if (u_array[j] == n_array[j]){&lt;br /&gt;
            j++;  &lt;br /&gt;
            right = 1;&lt;br /&gt;
            }&lt;br /&gt;
        else{&lt;br /&gt;
          &lt;br /&gt;
            right = 0;&lt;br /&gt;
            i = 4;&lt;br /&gt;
            j = currentlevel;&lt;br /&gt;
            wait = 0;&lt;br /&gt;
        }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if (right == 0){&lt;br /&gt;
  delay(300);&lt;br /&gt;
  i = 0;&lt;br /&gt;
  game_on = 0;&lt;br /&gt;
  currentlevel = 1;&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       delay (200);&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       &lt;br /&gt;
       delay(500);&lt;br /&gt;
       game_on = 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//if you insert the right sequence it levels up&lt;br /&gt;
if (right == 1){&lt;br /&gt;
    currentlevel++;&lt;br /&gt;
    wait = 0;&lt;br /&gt;
    }&lt;br /&gt;
//if you finish the game    &lt;br /&gt;
if (currentlevel == n_levels){&lt;br /&gt;
  delay(500);&lt;br /&gt;
  // The following is the victory sound:&lt;br /&gt;
  int notes[] = {2, 2, 2, 2, 0, 1, 2, 1, 2};&lt;br /&gt;
  int note = 0;&lt;br /&gt;
  int tempo[] = {200, 200, 200, 400, 400, 400, 200, 200, 600}; &lt;br /&gt;
  int breaks[] = {100, 100, 100, 200, 200, 200, 300, 100, 200}; &lt;br /&gt;
  for (i = 0; i &amp;lt; 9; i = i + 1){&lt;br /&gt;
  note = notes[i];&lt;br /&gt;
    digitalWrite(note+7, HIGH);&lt;br /&gt;
    playTone(tones[note], tempo[i]);&lt;br /&gt;
    digitalWrite(note+7, LOW);&lt;br /&gt;
    delay(breaks[i]);&lt;br /&gt;
  }&lt;br /&gt;
//sets game_on to 0, so it restarts a new game&lt;br /&gt;
game_on = 0;&lt;br /&gt;
currentlevel = 1;&lt;br /&gt;
n_levels = n_levels + 2;&lt;br /&gt;
speedfactor = speedfactor + 1;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Prototype==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Tûk v1 dessus.jpg|600px]]&lt;br /&gt;
[[Fichier:Cablage tûk dessus.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2020]]&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Cablage_t%C3%BBk_dessus.jpg&amp;diff=12919</id>
		<title>Fichier:Cablage tûk dessus.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Cablage_t%C3%BBk_dessus.jpg&amp;diff=12919"/>
				<updated>2020-01-17T13:35:40Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:T%C3%BBk_v1_dessus.jpg&amp;diff=12917</id>
		<title>Fichier:Tûk v1 dessus.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:T%C3%BBk_v1_dessus.jpg&amp;diff=12917"/>
				<updated>2020-01-17T13:35:04Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12912</id>
		<title>ENIB 2020 : Tûk</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12912"/>
				<updated>2020-01-17T13:30:37Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : /* Montage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==photo de l'équipe==&lt;br /&gt;
[[Fichier:Photoenib2018.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Que fait ce projet ? ==&lt;br /&gt;
Tûk est un jeu de mémoire très inspiré du jeu Simon.&lt;br /&gt;
Le principe du jeu se résume à suivre une séquence de couleurs données par le jeu.&lt;br /&gt;
Par exemple, si la première couleur qui s'allume est le jaune. Le joueur doit donc appuyer sur le bouton jaune. Puis Tûk rajoute des couleurs au fur et à mesure que le joueur réussi à répéter les séquences.&lt;br /&gt;
La séquence est réinitialisée à une couleur et la partie redémarre.&lt;br /&gt;
==Liste des composants==&lt;br /&gt;
&lt;br /&gt;
* 1 carte Arduino&lt;br /&gt;
* 4 boutons poussoirs de couleur différentes&lt;br /&gt;
* 4 LED de même couleur que les boutons&lt;br /&gt;
* 1 haut-parleur&lt;br /&gt;
* des câbles &lt;br /&gt;
* une boîte faite maison (medium 3mm)&lt;br /&gt;
* 1 pain de câblage&lt;br /&gt;
* 1 support batterie&lt;br /&gt;
* 1 pile rechargeable&lt;br /&gt;
* 4 résistances de 1kΩ&lt;br /&gt;
* 4 résistances de 10kΩ&lt;br /&gt;
&lt;br /&gt;
==Montage==&lt;br /&gt;
[[Fichier:Cablage tûk.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/*Created by Jeremy Wilson &lt;br /&gt;
&lt;br /&gt;
Memory Game with Arduino&lt;br /&gt;
&lt;br /&gt;
Modified by Rui Santos&lt;br /&gt;
Visit: http://randomnerdtutorials.com&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
// Constants&lt;br /&gt;
const int button1 = 2;          // 1st button controls Blue LED &lt;br /&gt;
const int button2 = 3;          // 2nd button controls Yellow LED&lt;br /&gt;
const int button3 = 4;          // 3rd button controls Green LED&lt;br /&gt;
const int button4 = 5;          // 4th button controls Red LED&lt;br /&gt;
const int led1 = 7;             // Blue LED&lt;br /&gt;
const int led2 = 8;             // Yellow LED&lt;br /&gt;
const int led3 = 9;             // Green LED&lt;br /&gt;
const int led4 = 10;            // Red LED&lt;br /&gt;
const int buzzer = 12;          // Buzzer Output&lt;br /&gt;
const int tones[] = {1915, 1700, 1519, 1432, 2700}; // tones when you press the LED's - the last one is when you fail.&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
int buttonState[] = {0,0,0,0};         // current state of the button&lt;br /&gt;
int lastButtonState[] = {0,0,0,0};     // previous state of the button&lt;br /&gt;
int buttonPushCounter[] = {0,0,0,0}; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void playTone(int tone, int duration) {&lt;br /&gt;
  for (long i = 0; i &amp;lt; duration * 1000L; i += tone * 2) {&lt;br /&gt;
    digitalWrite(buzzer, HIGH);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
    digitalWrite(buzzer, LOW);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // initialize inputs :&lt;br /&gt;
  randomSeed(analogRead(0));&lt;br /&gt;
  pinMode(button1, INPUT);&lt;br /&gt;
  pinMode(button2, INPUT);&lt;br /&gt;
  pinMode(button3, INPUT);&lt;br /&gt;
  pinMode(button4, INPUT);&lt;br /&gt;
  // initialize outputs:&lt;br /&gt;
  pinMode(led1, OUTPUT);&lt;br /&gt;
  pinMode(led2, OUTPUT);&lt;br /&gt;
  pinMode(led3, OUTPUT);&lt;br /&gt;
  pinMode(led4, OUTPUT);&lt;br /&gt;
  pinMode(buzzer, OUTPUT);&lt;br /&gt;
  // initialize serial communication for debugging:&lt;br /&gt;
  //Serial.begin(9600); &lt;br /&gt;
}&lt;br /&gt;
int game_on = 0;&lt;br /&gt;
int wait = 0;&lt;br /&gt;
int currentlevel = 1; // This is the level (also the number of button presses to pass to next level)&lt;br /&gt;
long rand_num = 0; //initialize long variable for random number from 0-100.&lt;br /&gt;
int rando = 0; //initialize random integer for loopgame_on. Will be from 1-4 later.&lt;br /&gt;
int butwait = 500; //amount of time to wait for next button input (ghetto de-bounce)&lt;br /&gt;
int ledtime = 500; //amount of time each LED flashes for when button is pressed&lt;br /&gt;
int n_levels = 10; //number of levels until the game is won&lt;br /&gt;
int pinandtone = 0; //This integer is used when the sequence is displayed&lt;br /&gt;
int right = 0; //This variable must be 1 in order to go to the next level&lt;br /&gt;
int speedfactor = 5; //This is the final speed of the lights and sounds for the last level. This increases as more games are won&lt;br /&gt;
int leddelay = 200; //Initializing time for LED. This will decrease as the level increases&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
  &lt;br /&gt;
int n_array[n_levels];&lt;br /&gt;
int u_array[n_levels];&lt;br /&gt;
&lt;br /&gt;
int i;&lt;br /&gt;
//clears arrays both &amp;quot;n_array&amp;quot; and &amp;quot;u_array&amp;quot; and starts a new game&lt;br /&gt;
if (game_on == 0){&lt;br /&gt;
for(i=0; i&amp;lt;n_levels; i=i+1){&lt;br /&gt;
        n_array[i]=0;&lt;br /&gt;
        u_array[i]=0;&lt;br /&gt;
        rand_num = random(1,200);&lt;br /&gt;
        if (rand_num &amp;lt;= 50)&lt;br /&gt;
          rando=0;&lt;br /&gt;
        else if (rand_num&amp;gt;50 &amp;amp;&amp;amp; rand_num&amp;lt;=100)&lt;br /&gt;
          rando=1;&lt;br /&gt;
        else if (rand_num&amp;gt;100 &amp;amp;&amp;amp; rand_num&amp;lt;=150)&lt;br /&gt;
          rando=2;&lt;br /&gt;
         else if (rand_num&amp;lt;=200)&lt;br /&gt;
          rando=3;&lt;br /&gt;
        //saves a random number in our n_array&lt;br /&gt;
         n_array[i]=rando;&lt;br /&gt;
      }&lt;br /&gt;
 game_on = 1; &lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//shows the user the current sequence&lt;br /&gt;
if (wait == 0){&lt;br /&gt;
 delay (200);&lt;br /&gt;
i = 0;&lt;br /&gt;
for (i = 0; i &amp;lt; currentlevel; i= i + 1){&lt;br /&gt;
  leddelay = ledtime/(1+(speedfactor/n_levels)*(currentlevel - 1));&lt;br /&gt;
      pinandtone = n_array[i];&lt;br /&gt;
      digitalWrite(pinandtone+7, HIGH);&lt;br /&gt;
      playTone(tones[pinandtone], leddelay);&lt;br /&gt;
      digitalWrite(pinandtone+7, LOW);&lt;br /&gt;
      delay(100/speedfactor);&lt;br /&gt;
    }&lt;br /&gt;
    wait = 1;&lt;br /&gt;
}&lt;br /&gt;
i = 0;&lt;br /&gt;
int buttonchange = 0;    &lt;br /&gt;
int j = 0; // This is the current position in the sequence&lt;br /&gt;
while (j &amp;lt; currentlevel){    &lt;br /&gt;
    while (buttonchange == 0){&lt;br /&gt;
          for (i = 0; i &amp;lt; 4; i = i + 1){ &lt;br /&gt;
          buttonState[i] = digitalRead(i+2);&lt;br /&gt;
          buttonchange = buttonchange + buttonState[i];&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
     for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
        if (buttonState[i] == HIGH) {&lt;br /&gt;
            digitalWrite(i+7, HIGH);&lt;br /&gt;
            playTone(tones[i], ledtime);&lt;br /&gt;
            digitalWrite(i+7, LOW);&lt;br /&gt;
            wait = 0;&lt;br /&gt;
            u_array[j]=i; &lt;br /&gt;
            buttonState[i] = LOW;&lt;br /&gt;
            buttonchange = 0;&lt;br /&gt;
         }&lt;br /&gt;
       } &lt;br /&gt;
        if (u_array[j] == n_array[j]){&lt;br /&gt;
            j++;  &lt;br /&gt;
            right = 1;&lt;br /&gt;
            }&lt;br /&gt;
        else{&lt;br /&gt;
          &lt;br /&gt;
            right = 0;&lt;br /&gt;
            i = 4;&lt;br /&gt;
            j = currentlevel;&lt;br /&gt;
            wait = 0;&lt;br /&gt;
        }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if (right == 0){&lt;br /&gt;
  delay(300);&lt;br /&gt;
  i = 0;&lt;br /&gt;
  game_on = 0;&lt;br /&gt;
  currentlevel = 1;&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       delay (200);&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       &lt;br /&gt;
       delay(500);&lt;br /&gt;
       game_on = 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//if you insert the right sequence it levels up&lt;br /&gt;
if (right == 1){&lt;br /&gt;
    currentlevel++;&lt;br /&gt;
    wait = 0;&lt;br /&gt;
    }&lt;br /&gt;
//if you finish the game    &lt;br /&gt;
if (currentlevel == n_levels){&lt;br /&gt;
  delay(500);&lt;br /&gt;
  // The following is the victory sound:&lt;br /&gt;
  int notes[] = {2, 2, 2, 2, 0, 1, 2, 1, 2};&lt;br /&gt;
  int note = 0;&lt;br /&gt;
  int tempo[] = {200, 200, 200, 400, 400, 400, 200, 200, 600}; &lt;br /&gt;
  int breaks[] = {100, 100, 100, 200, 200, 200, 300, 100, 200}; &lt;br /&gt;
  for (i = 0; i &amp;lt; 9; i = i + 1){&lt;br /&gt;
  note = notes[i];&lt;br /&gt;
    digitalWrite(note+7, HIGH);&lt;br /&gt;
    playTone(tones[note], tempo[i]);&lt;br /&gt;
    digitalWrite(note+7, LOW);&lt;br /&gt;
    delay(breaks[i]);&lt;br /&gt;
  }&lt;br /&gt;
//sets game_on to 0, so it restarts a new game&lt;br /&gt;
game_on = 0;&lt;br /&gt;
currentlevel = 1;&lt;br /&gt;
n_levels = n_levels + 2;&lt;br /&gt;
speedfactor = speedfactor + 1;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2020]]&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Cablage_t%C3%BBk.jpg&amp;diff=12911</id>
		<title>Fichier:Cablage tûk.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Cablage_t%C3%BBk.jpg&amp;diff=12911"/>
				<updated>2020-01-17T13:30:05Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12905</id>
		<title>ENIB 2020 : Tûk</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12905"/>
				<updated>2020-01-17T13:27:04Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==photo de l'équipe==&lt;br /&gt;
[[Fichier:Photoenib2018.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Que fait ce projet ? ==&lt;br /&gt;
Tûk est un jeu de mémoire très inspiré du jeu Simon.&lt;br /&gt;
Le principe du jeu se résume à suivre une séquence de couleurs données par le jeu.&lt;br /&gt;
Par exemple, si la première couleur qui s'allume est le jaune. Le joueur doit donc appuyer sur le bouton jaune. Puis Tûk rajoute des couleurs au fur et à mesure que le joueur réussi à répéter les séquences.&lt;br /&gt;
La séquence est réinitialisée à une couleur et la partie redémarre.&lt;br /&gt;
==Liste des composants==&lt;br /&gt;
&lt;br /&gt;
* 1 carte Arduino&lt;br /&gt;
* 4 boutons poussoirs de couleur différentes&lt;br /&gt;
* 4 LED de même couleur que les boutons&lt;br /&gt;
* 1 haut-parleur&lt;br /&gt;
* des câbles &lt;br /&gt;
* une boîte faite maison (medium 3mm)&lt;br /&gt;
* 1 pain de câblage&lt;br /&gt;
* 1 support batterie&lt;br /&gt;
* 1 pile rechargeable&lt;br /&gt;
* 4 résistances de 1kΩ&lt;br /&gt;
* 4 résistances de 10kΩ&lt;br /&gt;
&lt;br /&gt;
==Montage==&lt;br /&gt;
[[Fichier:Photoenib2018.jpg|600px]]&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/*Created by Jeremy Wilson &lt;br /&gt;
&lt;br /&gt;
Memory Game with Arduino&lt;br /&gt;
&lt;br /&gt;
Modified by Rui Santos&lt;br /&gt;
Visit: http://randomnerdtutorials.com&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
// Constants&lt;br /&gt;
const int button1 = 2;          // 1st button controls Blue LED &lt;br /&gt;
const int button2 = 3;          // 2nd button controls Yellow LED&lt;br /&gt;
const int button3 = 4;          // 3rd button controls Green LED&lt;br /&gt;
const int button4 = 5;          // 4th button controls Red LED&lt;br /&gt;
const int led1 = 7;             // Blue LED&lt;br /&gt;
const int led2 = 8;             // Yellow LED&lt;br /&gt;
const int led3 = 9;             // Green LED&lt;br /&gt;
const int led4 = 10;            // Red LED&lt;br /&gt;
const int buzzer = 12;          // Buzzer Output&lt;br /&gt;
const int tones[] = {1915, 1700, 1519, 1432, 2700}; // tones when you press the LED's - the last one is when you fail.&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
int buttonState[] = {0,0,0,0};         // current state of the button&lt;br /&gt;
int lastButtonState[] = {0,0,0,0};     // previous state of the button&lt;br /&gt;
int buttonPushCounter[] = {0,0,0,0}; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void playTone(int tone, int duration) {&lt;br /&gt;
  for (long i = 0; i &amp;lt; duration * 1000L; i += tone * 2) {&lt;br /&gt;
    digitalWrite(buzzer, HIGH);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
    digitalWrite(buzzer, LOW);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // initialize inputs :&lt;br /&gt;
  randomSeed(analogRead(0));&lt;br /&gt;
  pinMode(button1, INPUT);&lt;br /&gt;
  pinMode(button2, INPUT);&lt;br /&gt;
  pinMode(button3, INPUT);&lt;br /&gt;
  pinMode(button4, INPUT);&lt;br /&gt;
  // initialize outputs:&lt;br /&gt;
  pinMode(led1, OUTPUT);&lt;br /&gt;
  pinMode(led2, OUTPUT);&lt;br /&gt;
  pinMode(led3, OUTPUT);&lt;br /&gt;
  pinMode(led4, OUTPUT);&lt;br /&gt;
  pinMode(buzzer, OUTPUT);&lt;br /&gt;
  // initialize serial communication for debugging:&lt;br /&gt;
  //Serial.begin(9600); &lt;br /&gt;
}&lt;br /&gt;
int game_on = 0;&lt;br /&gt;
int wait = 0;&lt;br /&gt;
int currentlevel = 1; // This is the level (also the number of button presses to pass to next level)&lt;br /&gt;
long rand_num = 0; //initialize long variable for random number from 0-100.&lt;br /&gt;
int rando = 0; //initialize random integer for loopgame_on. Will be from 1-4 later.&lt;br /&gt;
int butwait = 500; //amount of time to wait for next button input (ghetto de-bounce)&lt;br /&gt;
int ledtime = 500; //amount of time each LED flashes for when button is pressed&lt;br /&gt;
int n_levels = 10; //number of levels until the game is won&lt;br /&gt;
int pinandtone = 0; //This integer is used when the sequence is displayed&lt;br /&gt;
int right = 0; //This variable must be 1 in order to go to the next level&lt;br /&gt;
int speedfactor = 5; //This is the final speed of the lights and sounds for the last level. This increases as more games are won&lt;br /&gt;
int leddelay = 200; //Initializing time for LED. This will decrease as the level increases&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
  &lt;br /&gt;
int n_array[n_levels];&lt;br /&gt;
int u_array[n_levels];&lt;br /&gt;
&lt;br /&gt;
int i;&lt;br /&gt;
//clears arrays both &amp;quot;n_array&amp;quot; and &amp;quot;u_array&amp;quot; and starts a new game&lt;br /&gt;
if (game_on == 0){&lt;br /&gt;
for(i=0; i&amp;lt;n_levels; i=i+1){&lt;br /&gt;
        n_array[i]=0;&lt;br /&gt;
        u_array[i]=0;&lt;br /&gt;
        rand_num = random(1,200);&lt;br /&gt;
        if (rand_num &amp;lt;= 50)&lt;br /&gt;
          rando=0;&lt;br /&gt;
        else if (rand_num&amp;gt;50 &amp;amp;&amp;amp; rand_num&amp;lt;=100)&lt;br /&gt;
          rando=1;&lt;br /&gt;
        else if (rand_num&amp;gt;100 &amp;amp;&amp;amp; rand_num&amp;lt;=150)&lt;br /&gt;
          rando=2;&lt;br /&gt;
         else if (rand_num&amp;lt;=200)&lt;br /&gt;
          rando=3;&lt;br /&gt;
        //saves a random number in our n_array&lt;br /&gt;
         n_array[i]=rando;&lt;br /&gt;
      }&lt;br /&gt;
 game_on = 1; &lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//shows the user the current sequence&lt;br /&gt;
if (wait == 0){&lt;br /&gt;
 delay (200);&lt;br /&gt;
i = 0;&lt;br /&gt;
for (i = 0; i &amp;lt; currentlevel; i= i + 1){&lt;br /&gt;
  leddelay = ledtime/(1+(speedfactor/n_levels)*(currentlevel - 1));&lt;br /&gt;
      pinandtone = n_array[i];&lt;br /&gt;
      digitalWrite(pinandtone+7, HIGH);&lt;br /&gt;
      playTone(tones[pinandtone], leddelay);&lt;br /&gt;
      digitalWrite(pinandtone+7, LOW);&lt;br /&gt;
      delay(100/speedfactor);&lt;br /&gt;
    }&lt;br /&gt;
    wait = 1;&lt;br /&gt;
}&lt;br /&gt;
i = 0;&lt;br /&gt;
int buttonchange = 0;    &lt;br /&gt;
int j = 0; // This is the current position in the sequence&lt;br /&gt;
while (j &amp;lt; currentlevel){    &lt;br /&gt;
    while (buttonchange == 0){&lt;br /&gt;
          for (i = 0; i &amp;lt; 4; i = i + 1){ &lt;br /&gt;
          buttonState[i] = digitalRead(i+2);&lt;br /&gt;
          buttonchange = buttonchange + buttonState[i];&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
     for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
        if (buttonState[i] == HIGH) {&lt;br /&gt;
            digitalWrite(i+7, HIGH);&lt;br /&gt;
            playTone(tones[i], ledtime);&lt;br /&gt;
            digitalWrite(i+7, LOW);&lt;br /&gt;
            wait = 0;&lt;br /&gt;
            u_array[j]=i; &lt;br /&gt;
            buttonState[i] = LOW;&lt;br /&gt;
            buttonchange = 0;&lt;br /&gt;
         }&lt;br /&gt;
       } &lt;br /&gt;
        if (u_array[j] == n_array[j]){&lt;br /&gt;
            j++;  &lt;br /&gt;
            right = 1;&lt;br /&gt;
            }&lt;br /&gt;
        else{&lt;br /&gt;
          &lt;br /&gt;
            right = 0;&lt;br /&gt;
            i = 4;&lt;br /&gt;
            j = currentlevel;&lt;br /&gt;
            wait = 0;&lt;br /&gt;
        }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if (right == 0){&lt;br /&gt;
  delay(300);&lt;br /&gt;
  i = 0;&lt;br /&gt;
  game_on = 0;&lt;br /&gt;
  currentlevel = 1;&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       delay (200);&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       &lt;br /&gt;
       delay(500);&lt;br /&gt;
       game_on = 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//if you insert the right sequence it levels up&lt;br /&gt;
if (right == 1){&lt;br /&gt;
    currentlevel++;&lt;br /&gt;
    wait = 0;&lt;br /&gt;
    }&lt;br /&gt;
//if you finish the game    &lt;br /&gt;
if (currentlevel == n_levels){&lt;br /&gt;
  delay(500);&lt;br /&gt;
  // The following is the victory sound:&lt;br /&gt;
  int notes[] = {2, 2, 2, 2, 0, 1, 2, 1, 2};&lt;br /&gt;
  int note = 0;&lt;br /&gt;
  int tempo[] = {200, 200, 200, 400, 400, 400, 200, 200, 600}; &lt;br /&gt;
  int breaks[] = {100, 100, 100, 200, 200, 200, 300, 100, 200}; &lt;br /&gt;
  for (i = 0; i &amp;lt; 9; i = i + 1){&lt;br /&gt;
  note = notes[i];&lt;br /&gt;
    digitalWrite(note+7, HIGH);&lt;br /&gt;
    playTone(tones[note], tempo[i]);&lt;br /&gt;
    digitalWrite(note+7, LOW);&lt;br /&gt;
    delay(breaks[i]);&lt;br /&gt;
  }&lt;br /&gt;
//sets game_on to 0, so it restarts a new game&lt;br /&gt;
game_on = 0;&lt;br /&gt;
currentlevel = 1;&lt;br /&gt;
n_levels = n_levels + 2;&lt;br /&gt;
speedfactor = speedfactor + 1;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2020]]&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12899</id>
		<title>ENIB 2020 : Tûk</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12899"/>
				<updated>2020-01-17T13:19:17Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : /* Liste des composants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==photo de l'équipe==&lt;br /&gt;
[[Fichier:Photoenib2018.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Que fait ce projet ? ==&lt;br /&gt;
Tûk est un jeu de mémoire très inspiré du jeu Simon.&lt;br /&gt;
Le principe du jeu se résume à suivre une séquence de couleurs données par le jeu.&lt;br /&gt;
Par exemple, si la première couleur qui s'allume est le jaune. Le joueur doit donc appuyer sur le bouton jaune. Puis Tûk rajoute des couleurs au fur et à mesure que le joueur réussi à répéter les séquences.&lt;br /&gt;
La séquence est réinitialisée à une couleur et la partie redémarre.&lt;br /&gt;
==Liste des composants==&lt;br /&gt;
&lt;br /&gt;
* 1 carte Arduino&lt;br /&gt;
* 4 boutons poussoirs de couleur différentes&lt;br /&gt;
* 4 LED de même couleur que les boutons&lt;br /&gt;
* 1 haut-parleur&lt;br /&gt;
* des câbles &lt;br /&gt;
* une boîte faite maison (medium 3mm)&lt;br /&gt;
* 1 pain de câblage&lt;br /&gt;
* 1 support batterie&lt;br /&gt;
* 1 pile rechargeable&lt;br /&gt;
* 4 résistances de 1kΩ&lt;br /&gt;
* 4 résistances de 10kΩ&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/*Created by Jeremy Wilson &lt;br /&gt;
&lt;br /&gt;
Memory Game with Arduino&lt;br /&gt;
&lt;br /&gt;
Modified by Rui Santos&lt;br /&gt;
Visit: http://randomnerdtutorials.com&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
// Constants&lt;br /&gt;
const int button1 = 2;          // 1st button controls Blue LED &lt;br /&gt;
const int button2 = 3;          // 2nd button controls Yellow LED&lt;br /&gt;
const int button3 = 4;          // 3rd button controls Green LED&lt;br /&gt;
const int button4 = 5;          // 4th button controls Red LED&lt;br /&gt;
const int led1 = 7;             // Blue LED&lt;br /&gt;
const int led2 = 8;             // Yellow LED&lt;br /&gt;
const int led3 = 9;             // Green LED&lt;br /&gt;
const int led4 = 10;            // Red LED&lt;br /&gt;
const int buzzer = 12;          // Buzzer Output&lt;br /&gt;
const int tones[] = {1915, 1700, 1519, 1432, 2700}; // tones when you press the LED's - the last one is when you fail.&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
int buttonState[] = {0,0,0,0};         // current state of the button&lt;br /&gt;
int lastButtonState[] = {0,0,0,0};     // previous state of the button&lt;br /&gt;
int buttonPushCounter[] = {0,0,0,0}; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void playTone(int tone, int duration) {&lt;br /&gt;
  for (long i = 0; i &amp;lt; duration * 1000L; i += tone * 2) {&lt;br /&gt;
    digitalWrite(buzzer, HIGH);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
    digitalWrite(buzzer, LOW);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // initialize inputs :&lt;br /&gt;
  randomSeed(analogRead(0));&lt;br /&gt;
  pinMode(button1, INPUT);&lt;br /&gt;
  pinMode(button2, INPUT);&lt;br /&gt;
  pinMode(button3, INPUT);&lt;br /&gt;
  pinMode(button4, INPUT);&lt;br /&gt;
  // initialize outputs:&lt;br /&gt;
  pinMode(led1, OUTPUT);&lt;br /&gt;
  pinMode(led2, OUTPUT);&lt;br /&gt;
  pinMode(led3, OUTPUT);&lt;br /&gt;
  pinMode(led4, OUTPUT);&lt;br /&gt;
  pinMode(buzzer, OUTPUT);&lt;br /&gt;
  // initialize serial communication for debugging:&lt;br /&gt;
  //Serial.begin(9600); &lt;br /&gt;
}&lt;br /&gt;
int game_on = 0;&lt;br /&gt;
int wait = 0;&lt;br /&gt;
int currentlevel = 1; // This is the level (also the number of button presses to pass to next level)&lt;br /&gt;
long rand_num = 0; //initialize long variable for random number from 0-100.&lt;br /&gt;
int rando = 0; //initialize random integer for loopgame_on. Will be from 1-4 later.&lt;br /&gt;
int butwait = 500; //amount of time to wait for next button input (ghetto de-bounce)&lt;br /&gt;
int ledtime = 500; //amount of time each LED flashes for when button is pressed&lt;br /&gt;
int n_levels = 10; //number of levels until the game is won&lt;br /&gt;
int pinandtone = 0; //This integer is used when the sequence is displayed&lt;br /&gt;
int right = 0; //This variable must be 1 in order to go to the next level&lt;br /&gt;
int speedfactor = 5; //This is the final speed of the lights and sounds for the last level. This increases as more games are won&lt;br /&gt;
int leddelay = 200; //Initializing time for LED. This will decrease as the level increases&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
  &lt;br /&gt;
int n_array[n_levels];&lt;br /&gt;
int u_array[n_levels];&lt;br /&gt;
&lt;br /&gt;
int i;&lt;br /&gt;
//clears arrays both &amp;quot;n_array&amp;quot; and &amp;quot;u_array&amp;quot; and starts a new game&lt;br /&gt;
if (game_on == 0){&lt;br /&gt;
for(i=0; i&amp;lt;n_levels; i=i+1){&lt;br /&gt;
        n_array[i]=0;&lt;br /&gt;
        u_array[i]=0;&lt;br /&gt;
        rand_num = random(1,200);&lt;br /&gt;
        if (rand_num &amp;lt;= 50)&lt;br /&gt;
          rando=0;&lt;br /&gt;
        else if (rand_num&amp;gt;50 &amp;amp;&amp;amp; rand_num&amp;lt;=100)&lt;br /&gt;
          rando=1;&lt;br /&gt;
        else if (rand_num&amp;gt;100 &amp;amp;&amp;amp; rand_num&amp;lt;=150)&lt;br /&gt;
          rando=2;&lt;br /&gt;
         else if (rand_num&amp;lt;=200)&lt;br /&gt;
          rando=3;&lt;br /&gt;
        //saves a random number in our n_array&lt;br /&gt;
         n_array[i]=rando;&lt;br /&gt;
      }&lt;br /&gt;
 game_on = 1; &lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//shows the user the current sequence&lt;br /&gt;
if (wait == 0){&lt;br /&gt;
 delay (200);&lt;br /&gt;
i = 0;&lt;br /&gt;
for (i = 0; i &amp;lt; currentlevel; i= i + 1){&lt;br /&gt;
  leddelay = ledtime/(1+(speedfactor/n_levels)*(currentlevel - 1));&lt;br /&gt;
      pinandtone = n_array[i];&lt;br /&gt;
      digitalWrite(pinandtone+7, HIGH);&lt;br /&gt;
      playTone(tones[pinandtone], leddelay);&lt;br /&gt;
      digitalWrite(pinandtone+7, LOW);&lt;br /&gt;
      delay(100/speedfactor);&lt;br /&gt;
    }&lt;br /&gt;
    wait = 1;&lt;br /&gt;
}&lt;br /&gt;
i = 0;&lt;br /&gt;
int buttonchange = 0;    &lt;br /&gt;
int j = 0; // This is the current position in the sequence&lt;br /&gt;
while (j &amp;lt; currentlevel){    &lt;br /&gt;
    while (buttonchange == 0){&lt;br /&gt;
          for (i = 0; i &amp;lt; 4; i = i + 1){ &lt;br /&gt;
          buttonState[i] = digitalRead(i+2);&lt;br /&gt;
          buttonchange = buttonchange + buttonState[i];&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
     for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
        if (buttonState[i] == HIGH) {&lt;br /&gt;
            digitalWrite(i+7, HIGH);&lt;br /&gt;
            playTone(tones[i], ledtime);&lt;br /&gt;
            digitalWrite(i+7, LOW);&lt;br /&gt;
            wait = 0;&lt;br /&gt;
            u_array[j]=i; &lt;br /&gt;
            buttonState[i] = LOW;&lt;br /&gt;
            buttonchange = 0;&lt;br /&gt;
         }&lt;br /&gt;
       } &lt;br /&gt;
        if (u_array[j] == n_array[j]){&lt;br /&gt;
            j++;  &lt;br /&gt;
            right = 1;&lt;br /&gt;
            }&lt;br /&gt;
        else{&lt;br /&gt;
          &lt;br /&gt;
            right = 0;&lt;br /&gt;
            i = 4;&lt;br /&gt;
            j = currentlevel;&lt;br /&gt;
            wait = 0;&lt;br /&gt;
        }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if (right == 0){&lt;br /&gt;
  delay(300);&lt;br /&gt;
  i = 0;&lt;br /&gt;
  game_on = 0;&lt;br /&gt;
  currentlevel = 1;&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       delay (200);&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       &lt;br /&gt;
       delay(500);&lt;br /&gt;
       game_on = 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//if you insert the right sequence it levels up&lt;br /&gt;
if (right == 1){&lt;br /&gt;
    currentlevel++;&lt;br /&gt;
    wait = 0;&lt;br /&gt;
    }&lt;br /&gt;
//if you finish the game    &lt;br /&gt;
if (currentlevel == n_levels){&lt;br /&gt;
  delay(500);&lt;br /&gt;
  // The following is the victory sound:&lt;br /&gt;
  int notes[] = {2, 2, 2, 2, 0, 1, 2, 1, 2};&lt;br /&gt;
  int note = 0;&lt;br /&gt;
  int tempo[] = {200, 200, 200, 400, 400, 400, 200, 200, 600}; &lt;br /&gt;
  int breaks[] = {100, 100, 100, 200, 200, 200, 300, 100, 200}; &lt;br /&gt;
  for (i = 0; i &amp;lt; 9; i = i + 1){&lt;br /&gt;
  note = notes[i];&lt;br /&gt;
    digitalWrite(note+7, HIGH);&lt;br /&gt;
    playTone(tones[note], tempo[i]);&lt;br /&gt;
    digitalWrite(note+7, LOW);&lt;br /&gt;
    delay(breaks[i]);&lt;br /&gt;
  }&lt;br /&gt;
//sets game_on to 0, so it restarts a new game&lt;br /&gt;
game_on = 0;&lt;br /&gt;
currentlevel = 1;&lt;br /&gt;
n_levels = n_levels + 2;&lt;br /&gt;
speedfactor = speedfactor + 1;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2020]]&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12896</id>
		<title>ENIB 2020 : Tûk</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12896"/>
				<updated>2020-01-17T13:18:07Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==photo de l'équipe==&lt;br /&gt;
[[Fichier:Photoenib2018.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Que fait ce projet ? ==&lt;br /&gt;
Tûk est un jeu de mémoire très inspiré du jeu Simon.&lt;br /&gt;
Le principe du jeu se résume à suivre une séquence de couleurs données par le jeu.&lt;br /&gt;
Par exemple, si la première couleur qui s'allume est le jaune. Le joueur doit donc appuyer sur le bouton jaune. Puis Tûk rajoute des couleurs au fur et à mesure que le joueur réussi à répéter les séquences.&lt;br /&gt;
La séquence est réinitialisée à une couleur et la partie redémarre.&lt;br /&gt;
==Liste des composants==&lt;br /&gt;
&lt;br /&gt;
* 1 carte Arduino&lt;br /&gt;
* 4 boutons poussoirs de couleur différentes&lt;br /&gt;
* 4 LED de même couleur que les boutons&lt;br /&gt;
* 1 haut-parleur&lt;br /&gt;
* des câbles &lt;br /&gt;
* une boîte faite maison (medium 3mm)&lt;br /&gt;
* 1 pain de câblage&lt;br /&gt;
* 1 support batterie&lt;br /&gt;
* 1 pile rechargeable&lt;br /&gt;
* 4 résistance de 1kΩ&lt;br /&gt;
* 4 résistance de 10kΩ&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/*Created by Jeremy Wilson &lt;br /&gt;
&lt;br /&gt;
Memory Game with Arduino&lt;br /&gt;
&lt;br /&gt;
Modified by Rui Santos&lt;br /&gt;
Visit: http://randomnerdtutorials.com&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
// Constants&lt;br /&gt;
const int button1 = 2;          // 1st button controls Blue LED &lt;br /&gt;
const int button2 = 3;          // 2nd button controls Yellow LED&lt;br /&gt;
const int button3 = 4;          // 3rd button controls Green LED&lt;br /&gt;
const int button4 = 5;          // 4th button controls Red LED&lt;br /&gt;
const int led1 = 7;             // Blue LED&lt;br /&gt;
const int led2 = 8;             // Yellow LED&lt;br /&gt;
const int led3 = 9;             // Green LED&lt;br /&gt;
const int led4 = 10;            // Red LED&lt;br /&gt;
const int buzzer = 12;          // Buzzer Output&lt;br /&gt;
const int tones[] = {1915, 1700, 1519, 1432, 2700}; // tones when you press the LED's - the last one is when you fail.&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
int buttonState[] = {0,0,0,0};         // current state of the button&lt;br /&gt;
int lastButtonState[] = {0,0,0,0};     // previous state of the button&lt;br /&gt;
int buttonPushCounter[] = {0,0,0,0}; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void playTone(int tone, int duration) {&lt;br /&gt;
  for (long i = 0; i &amp;lt; duration * 1000L; i += tone * 2) {&lt;br /&gt;
    digitalWrite(buzzer, HIGH);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
    digitalWrite(buzzer, LOW);&lt;br /&gt;
    delayMicroseconds(tone);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // initialize inputs :&lt;br /&gt;
  randomSeed(analogRead(0));&lt;br /&gt;
  pinMode(button1, INPUT);&lt;br /&gt;
  pinMode(button2, INPUT);&lt;br /&gt;
  pinMode(button3, INPUT);&lt;br /&gt;
  pinMode(button4, INPUT);&lt;br /&gt;
  // initialize outputs:&lt;br /&gt;
  pinMode(led1, OUTPUT);&lt;br /&gt;
  pinMode(led2, OUTPUT);&lt;br /&gt;
  pinMode(led3, OUTPUT);&lt;br /&gt;
  pinMode(led4, OUTPUT);&lt;br /&gt;
  pinMode(buzzer, OUTPUT);&lt;br /&gt;
  // initialize serial communication for debugging:&lt;br /&gt;
  //Serial.begin(9600); &lt;br /&gt;
}&lt;br /&gt;
int game_on = 0;&lt;br /&gt;
int wait = 0;&lt;br /&gt;
int currentlevel = 1; // This is the level (also the number of button presses to pass to next level)&lt;br /&gt;
long rand_num = 0; //initialize long variable for random number from 0-100.&lt;br /&gt;
int rando = 0; //initialize random integer for loopgame_on. Will be from 1-4 later.&lt;br /&gt;
int butwait = 500; //amount of time to wait for next button input (ghetto de-bounce)&lt;br /&gt;
int ledtime = 500; //amount of time each LED flashes for when button is pressed&lt;br /&gt;
int n_levels = 10; //number of levels until the game is won&lt;br /&gt;
int pinandtone = 0; //This integer is used when the sequence is displayed&lt;br /&gt;
int right = 0; //This variable must be 1 in order to go to the next level&lt;br /&gt;
int speedfactor = 5; //This is the final speed of the lights and sounds for the last level. This increases as more games are won&lt;br /&gt;
int leddelay = 200; //Initializing time for LED. This will decrease as the level increases&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
  &lt;br /&gt;
int n_array[n_levels];&lt;br /&gt;
int u_array[n_levels];&lt;br /&gt;
&lt;br /&gt;
int i;&lt;br /&gt;
//clears arrays both &amp;quot;n_array&amp;quot; and &amp;quot;u_array&amp;quot; and starts a new game&lt;br /&gt;
if (game_on == 0){&lt;br /&gt;
for(i=0; i&amp;lt;n_levels; i=i+1){&lt;br /&gt;
        n_array[i]=0;&lt;br /&gt;
        u_array[i]=0;&lt;br /&gt;
        rand_num = random(1,200);&lt;br /&gt;
        if (rand_num &amp;lt;= 50)&lt;br /&gt;
          rando=0;&lt;br /&gt;
        else if (rand_num&amp;gt;50 &amp;amp;&amp;amp; rand_num&amp;lt;=100)&lt;br /&gt;
          rando=1;&lt;br /&gt;
        else if (rand_num&amp;gt;100 &amp;amp;&amp;amp; rand_num&amp;lt;=150)&lt;br /&gt;
          rando=2;&lt;br /&gt;
         else if (rand_num&amp;lt;=200)&lt;br /&gt;
          rando=3;&lt;br /&gt;
        //saves a random number in our n_array&lt;br /&gt;
         n_array[i]=rando;&lt;br /&gt;
      }&lt;br /&gt;
 game_on = 1; &lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//shows the user the current sequence&lt;br /&gt;
if (wait == 0){&lt;br /&gt;
 delay (200);&lt;br /&gt;
i = 0;&lt;br /&gt;
for (i = 0; i &amp;lt; currentlevel; i= i + 1){&lt;br /&gt;
  leddelay = ledtime/(1+(speedfactor/n_levels)*(currentlevel - 1));&lt;br /&gt;
      pinandtone = n_array[i];&lt;br /&gt;
      digitalWrite(pinandtone+7, HIGH);&lt;br /&gt;
      playTone(tones[pinandtone], leddelay);&lt;br /&gt;
      digitalWrite(pinandtone+7, LOW);&lt;br /&gt;
      delay(100/speedfactor);&lt;br /&gt;
    }&lt;br /&gt;
    wait = 1;&lt;br /&gt;
}&lt;br /&gt;
i = 0;&lt;br /&gt;
int buttonchange = 0;    &lt;br /&gt;
int j = 0; // This is the current position in the sequence&lt;br /&gt;
while (j &amp;lt; currentlevel){    &lt;br /&gt;
    while (buttonchange == 0){&lt;br /&gt;
          for (i = 0; i &amp;lt; 4; i = i + 1){ &lt;br /&gt;
          buttonState[i] = digitalRead(i+2);&lt;br /&gt;
          buttonchange = buttonchange + buttonState[i];&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
     for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
        if (buttonState[i] == HIGH) {&lt;br /&gt;
            digitalWrite(i+7, HIGH);&lt;br /&gt;
            playTone(tones[i], ledtime);&lt;br /&gt;
            digitalWrite(i+7, LOW);&lt;br /&gt;
            wait = 0;&lt;br /&gt;
            u_array[j]=i; &lt;br /&gt;
            buttonState[i] = LOW;&lt;br /&gt;
            buttonchange = 0;&lt;br /&gt;
         }&lt;br /&gt;
       } &lt;br /&gt;
        if (u_array[j] == n_array[j]){&lt;br /&gt;
            j++;  &lt;br /&gt;
            right = 1;&lt;br /&gt;
            }&lt;br /&gt;
        else{&lt;br /&gt;
          &lt;br /&gt;
            right = 0;&lt;br /&gt;
            i = 4;&lt;br /&gt;
            j = currentlevel;&lt;br /&gt;
            wait = 0;&lt;br /&gt;
        }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if (right == 0){&lt;br /&gt;
  delay(300);&lt;br /&gt;
  i = 0;&lt;br /&gt;
  game_on = 0;&lt;br /&gt;
  currentlevel = 1;&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       delay (200);&lt;br /&gt;
  for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, HIGH);&lt;br /&gt;
      }&lt;br /&gt;
          playTone(tones[4], ledtime);&lt;br /&gt;
   for (i = 0; i &amp;lt; 4; i = i + 1){&lt;br /&gt;
         digitalWrite(i+7, LOW);   &lt;br /&gt;
       }&lt;br /&gt;
       &lt;br /&gt;
       delay(500);&lt;br /&gt;
       game_on = 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//if you insert the right sequence it levels up&lt;br /&gt;
if (right == 1){&lt;br /&gt;
    currentlevel++;&lt;br /&gt;
    wait = 0;&lt;br /&gt;
    }&lt;br /&gt;
//if you finish the game    &lt;br /&gt;
if (currentlevel == n_levels){&lt;br /&gt;
  delay(500);&lt;br /&gt;
  // The following is the victory sound:&lt;br /&gt;
  int notes[] = {2, 2, 2, 2, 0, 1, 2, 1, 2};&lt;br /&gt;
  int note = 0;&lt;br /&gt;
  int tempo[] = {200, 200, 200, 400, 400, 400, 200, 200, 600}; &lt;br /&gt;
  int breaks[] = {100, 100, 100, 200, 200, 200, 300, 100, 200}; &lt;br /&gt;
  for (i = 0; i &amp;lt; 9; i = i + 1){&lt;br /&gt;
  note = notes[i];&lt;br /&gt;
    digitalWrite(note+7, HIGH);&lt;br /&gt;
    playTone(tones[note], tempo[i]);&lt;br /&gt;
    digitalWrite(note+7, LOW);&lt;br /&gt;
    delay(breaks[i]);&lt;br /&gt;
  }&lt;br /&gt;
//sets game_on to 0, so it restarts a new game&lt;br /&gt;
game_on = 0;&lt;br /&gt;
currentlevel = 1;&lt;br /&gt;
n_levels = n_levels + 2;&lt;br /&gt;
speedfactor = speedfactor + 1;&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2020]]&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12760</id>
		<title>ENIB 2020 : Tûk</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12760"/>
				<updated>2020-01-16T15:18:23Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : /* Liste des composants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==photo de l'équipe==&lt;br /&gt;
[[Fichier:Photoenib2018.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Que fait ce projet ? ==&lt;br /&gt;
Tûk est un jeu de mémoire très inspiré du jeu Simon.&lt;br /&gt;
Le principe du jeu se résume à suivre une séquence de couleurs données par le jeu.&lt;br /&gt;
Par exemple, la première couleur qui s'allume est le jaune. Le joueur doit donc appuyer sur le bouton jaune. Puis Tûk rajoute des couleurs au fur et à mesure que le joueur réussi à répéter les séquences.&lt;br /&gt;
La séquence est réinitialisée à une couleur et la partie redémarre.&lt;br /&gt;
==Liste des composants==&lt;br /&gt;
&lt;br /&gt;
* 1 carte Arduino&lt;br /&gt;
* 4 boutons poussoirs de couleur différentes&lt;br /&gt;
* 4 LED de même couleur que les boutons&lt;br /&gt;
* 1 interrupteur&lt;br /&gt;
* 1 haut-parleur&lt;br /&gt;
* des câbles &lt;br /&gt;
* une boîte faite maison (medium 3mm)&lt;br /&gt;
* 2 pains de câblage&lt;br /&gt;
* 1 lecteur mp3&lt;br /&gt;
* 1 support batterie&lt;br /&gt;
* 1 pile rechargeable&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2020]]&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12758</id>
		<title>ENIB 2020 : Tûk</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12758"/>
				<updated>2020-01-16T15:16:39Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==photo de l'équipe==&lt;br /&gt;
[[Fichier:Photoenib2018.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Que fait ce projet ? ==&lt;br /&gt;
Tûk est un jeu de mémoire très inspiré du jeu Simon.&lt;br /&gt;
Le principe du jeu se résume à suivre une séquence de couleurs données par le jeu.&lt;br /&gt;
Par exemple, la première couleur qui s'allume est le jaune. Le joueur doit donc appuyer sur le bouton jaune. Puis Tûk rajoute des couleurs au fur et à mesure que le joueur réussi à répéter les séquences.&lt;br /&gt;
La séquence est réinitialisée à une couleur et la partie redémarre.&lt;br /&gt;
==Liste des composants==&lt;br /&gt;
&lt;br /&gt;
* 1 carte Arduino&lt;br /&gt;
* 4 boutons poussoirs de couleur différentes&lt;br /&gt;
* 4 LED de même couleur que les boutons&lt;br /&gt;
* 1 interrupteur&lt;br /&gt;
* 1 haut-parleur&lt;br /&gt;
* des câbles &lt;br /&gt;
* une boîte faite maison (medium 3mm)&lt;br /&gt;
* 2 pains de câblage&lt;br /&gt;
* 1 mp3-tp-16b&lt;br /&gt;
* 1 support batterie&lt;br /&gt;
* 1 pile rechargeable&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2020]]&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12755</id>
		<title>ENIB 2020 : Tûk</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2020_:_T%C3%BBk&amp;diff=12755"/>
				<updated>2020-01-16T14:58:14Z</updated>
		
		<summary type="html">&lt;p&gt;Antoine Brusco : Page créée avec « ==photo de l'équipe== 600px  ==Que fait ce projet ? ==  ==Liste des composants==  * composant 1 * composant 2 * ...  ==Code== &amp;lt;pre&amp;gt; ici je p... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==photo de l'équipe==&lt;br /&gt;
[[Fichier:Photoenib2018.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Que fait ce projet ? ==&lt;br /&gt;
&lt;br /&gt;
==Liste des composants==&lt;br /&gt;
&lt;br /&gt;
* composant 1&lt;br /&gt;
* composant 2&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2020]]&lt;/div&gt;</summary>
		<author><name>Antoine Brusco</name></author>	</entry>

	</feed>