/* Drawduino Adaptation du principe drawAudio à l'arduino par Célestin Préault pour semageek.com, d'après Clavier_Piano */ #include //Pensez à installer la librairie tone Tone freq1; // on appelle une variable freq1 qui va faire partie de la bibliothèque tone, donc qui va savoir quel numéro conrrespond à quelle fréquence const int NOTE_freq[] = { 261, 293, 329, 349, 392, 440, 494, 523 }; // on définit les notes de fréquence à partir de la bibliothèque "tone" qui donne les notes ci dessous // DO, RE, MI, FA, SOL, LA, SI // 0, 1, 2, 3, 4, 5, 6 const int capt = 0; //Crayon sur le pin Analog 0 int stylo=0; // ont initialise la variable stylo à 0 void setup() { Serial.begin(9600); freq1.begin(13); //pin du haut-parleur } void loop() { // on commence une boucle infinie stylo = analogRead(capt)/8; //divise la valeur lue par 8 pour ramener la variable entre 0 et 100 Serial.println(stylo); //affiche la valeur lue et permet de controler ( on voit les valeurs quand on appuis sur la loupe en haut à droite de l'arduino) if (stylo<=150&&stylo>=90) { //si la valeur du stylo est comprise entre 150 et 90 on ne fait rien cela permet d'avoir un peu de silence } if (stylo<=89&&stylo>=80) { freq1.play( NOTE_freq[1], 100); // si la valeur du stylo se trouve entre 89 et 80 on joue la note 1 ce qui correspond au RE } if (stylo<=79&&stylo>=60) { freq1.play( NOTE_freq[2], 100); // si la valeur du stylo se trouve entre 79 et 60 on joue la note 2 ce qui correspond au MI } if (stylo<=59&&stylo>=50) { freq1.play( NOTE_freq[3], 100); // si la valeur du stylo se trouve entre 59 et 50 on joue la note 3 ce qui correspond au FA } if (stylo<=49&&stylo>=40) { freq1.play( NOTE_freq[4], 100); // si la valeur du stylo se trouve entre 49 et 40 on joue la note 4 ce qui correspond au SOL } if (stylo<=39&&stylo>=30) { freq1.play( NOTE_freq[5], 100); // si la valeur du stylo se trouve entre 39 et 30 on joue la note 5 ce qui correspond au LA } if (stylo<=29&&stylo>=20) { freq1.play( NOTE_freq[6], 100); // si la valeur du stylo se trouve entre 29 et 20 on joue la note 6 ce qui correspond au SI } if (stylo<=19&&stylo>=0) { freq1.play( NOTE_freq[7], 100); // si la valeur du stylo se trouve entre 19 et 0 on joue la note 7 ce qui correspond au DO } } // fin de la boucle on retourne au début de la boucle pour recommencer un cycle