Créer un site internet

Arduino "construction"

  • Un câble USB

 

 

Le code html pour le schéma http://www.wikidebrouillard.org/images/b/bd/Minuteur-schema.jpg

 

/* Blink Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */ // Pin 13 has an LED connected on most Arduino boards. // give it a name: int seg1 = 13; int seg2 = 12; int seg3 = 11; int seg4 = 10; int seg5 = 9; int seg6 = 8; int seg7 = 7; int Buzzer = 6; int moins = 5; int choix = 4; int launch= 3; // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. pinMode(seg1, OUTPUT); pinMode(seg2, OUTPUT); pinMode(seg3, OUTPUT); pinMode(seg4, OUTPUT); pinMode(seg5, OUTPUT); pinMode(seg6, OUTPUT); pinMode(seg7, OUTPUT); pinMode(Buzzer, OUTPUT); pinMode(moins, OUTPUT); pinMode(choix, INPUT); pinMode(launch, INPUT); } // the loop routine runs over and over again forever: void loop(){ int incr = 0; /* Mise en place de toute les variables*/ int temps = 0; int decr = 0; int aff = 0; int lancer = 0; int seconde = 1000; int minute = 60000; int heure = 3600000; while(lancer == 0){ /*Tant que le bouton pour lancer */ noTone(Buzzer); /*le programme s’exécute.*/ incr = digitalRead(choix); /* lit l'entrée définit comme choix*/ if (incr == HIGH) temps++; /*si c'est haut augmente le temps*/ if (temps > 9) temps = 0; /*si il dépasse 9, remise à 0 */ if (temps == 0){ /* affiche le 0 si le temps est à 0 */ digitalWrite(seg1, HIGH); /*allume le segment*/ digitalWrite(seg2, HIGH); /*allume le segment*/ digitalWrite(seg3, HIGH); /*allume le segment*/ digitalWrite(seg4, HIGH); /*allume le segment*/ digitalWrite(seg5, HIGH); /*allume le segment*/ digitalWrite(seg6, HIGH); /*allume le segment*/ digitalWrite(seg7, LOW); /*éteint le segment*/ } if (temps == 1){ /* affiche le 1 si le temps est à 1 */ digitalWrite(seg1, LOW); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, LOW); digitalWrite(seg5, LOW); digitalWrite(seg6, LOW); digitalWrite(seg7, LOW); } if (temps == 2){ /* affiche le 2 si le temps est à 2 */ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, LOW); digitalWrite(seg4, HIGH); digitalWrite(seg5, HIGH); digitalWrite(seg6, LOW); digitalWrite(seg7, HIGH); } if (temps == 3){ /* affiche le 3 si le temps est à 3 */ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, LOW); digitalWrite(seg6, LOW); digitalWrite(seg7, HIGH); } if (temps == 4){ /* affiche le 4 si le temps est à 4 */ digitalWrite(seg1, LOW); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, LOW); digitalWrite(seg5, LOW); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } if (temps == 5){ /* affiche le 5 si le temps est à 5 */ digitalWrite(seg1, HIGH); digitalWrite(seg2, LOW); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, LOW); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } if (temps == 6){ /* affiche le 6 si le temps est à 6 */ digitalWrite(seg1, HIGH); digitalWrite(seg2, LOW); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, HIGH); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } if (temps == 7){ /* affiche le 7 si le temps est à 7 */ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, LOW); digitalWrite(seg5, LOW); digitalWrite(seg6, LOW); digitalWrite(seg7, LOW); } if (temps == 8){ /* affiche le 8 si le temps est à 8 */ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, HIGH); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } if (temps == 9){ /* affiche le 9 si le temps est à 9 */ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, LOW); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } lancer = digitalRead(launch); /* lit l'entrée lancer*/ if (lancer == HIGH) lancer = 1; delay(1000); } if (lancer == 1){ /* si lancer est à 1*/ aff = temps; /* met le temps dans la variable d'affichage*/ temps = temps * seconde; /* adapte le temps à l’échelle */ } while((lancer == 1) && (temps != 0)){ temps = temps - seconde; /* décompte en milliseconde*/ decr += 1; if (decr == (seconde/1000)){ /*si 1 seconde de passée*/ aff -= 1; /*change le temps à afficher*/ decr =0; /* remise à zéro du compteur de décrémentation*/ delay(500); /* attend 0.5 secondes*/ tone(Buzzer, 2000); /*fait sonner le buzzer*/ delay(500); noTone(Buzzer); /* arrête le buzzer*/ } else{ delay(1000); } if (aff == 1){ digitalWrite(seg1, LOW); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, LOW); digitalWrite(seg5, LOW); digitalWrite(seg6, LOW); digitalWrite(seg7, LOW); } if (aff == 2){ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, LOW); digitalWrite(seg4, HIGH); digitalWrite(seg5, HIGH); digitalWrite(seg6, LOW); digitalWrite(seg7, HIGH); } if (aff == 3){ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, LOW); digitalWrite(seg6, LOW); digitalWrite(seg7, HIGH); } if (aff == 4){ digitalWrite(seg1, LOW); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, LOW); digitalWrite(seg5, LOW); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } if (aff == 5){ digitalWrite(seg1, HIGH); digitalWrite(seg2, LOW); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, LOW); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } if (aff == 6){ digitalWrite(seg1, HIGH); digitalWrite(seg2, LOW); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, HIGH); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } if (aff == 7){ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, LOW); digitalWrite(seg5, LOW); digitalWrite(seg6, LOW); digitalWrite(seg7, LOW); } if (aff == 8){ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, HIGH); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } if (aff == 9){ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, LOW); digitalWrite(seg6, HIGH); digitalWrite(seg7, HIGH); } } while((lancer == 1)&&(temps == 0)){ digitalWrite(seg1, HIGH); digitalWrite(seg2, HIGH); digitalWrite(seg3, HIGH); digitalWrite(seg4, HIGH); digitalWrite(seg5, HIGH); digitalWrite(seg6, HIGH); digitalWrite(seg7, LOW); noTone(Buzzer); tone(Buzzer, 3500); incr = digitalRead(choix); if (incr == HIGH) lancer = 0; } }
 

Ajouter un commentaire