Outils pour utilisateurs

Outils du site


wiki:projets:airpiano

Ceci est une ancienne révision du document !


AIR PIANO

Daphné Chamot-Rooke (contact : daphne.chamot-rooke@etu.upmc.fr)

Objectif : créer un clavier virtuel qui fait de la musique sans touches

Matériel :

  • carte Arduino UNO
  • 1 (ou 2) sonar(s)
  • un ruban de LEDs de couleurs
  • fils de connexion + breadboard
  • 1 feuille de plastique (un peu opaque mais pas trop)
  • du contreplaqué en 3mm
  • 1 PC + une sortie son
  • machine à souder

Conception

Code

Code provisoire :

#define trigPin 10
#define echoPin 8
const byte PIN_BUZZER = 13;
long duration, distance;
int frequence = 0;
void setup() {
  Serial.begin(9600);
  pinMode(LED_BUILTIN, OUTPUT);
  pinMode(13, OUTPUT); //on prépare le pin 13 en mode sortie
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(12, OUTPUT);
  Serial.println("== Debut du programme ==");
}

void loop() {
  // Envoie de l'onde
   
  digitalWrite(trigPin, LOW);
  delayMicroseconds(200);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(200);
  digitalWrite(trigPin, LOW);
  // Réception de l'écho
  duration = pulseIn(echoPin, HIGH);
  // Calcul de la distance
  distance = (duration / 2) / 29.1;
  if (distance >= 80 || distance <= 0) {
    digitalWrite(9, LOW);    // turn the LED off by making the voltage LOW
    Serial.println("Hors plage");
  }
  else
  {
     digitalWrite(9, HIGH);   // turn the LED on (HIGH is the voltage level)
    Serial.print("distance = ");
    Serial.print(distance);
    Serial.println(" cm");
   tone (13, 200 + (2^12)*distance); //on joue la note
   delay(400);
   noTone(13);//on arrete la note
   
  }
  delay(100);
  // délai entre deux mesures
}
LDAP: couldn't connect to LDAP server
wiki/projets/airpiano.1542269727.txt.gz · Dernière modification: 2018/11/15 08:15 de daphne