/*
######################################################################################################
# Des BUZZERS pour quatre joueurs avec des relais pour un bon allumage des lampes #
######################################################################################################
*/
// *** Déclaration des variables ***
// Déclaration des boutons poussoirs
const int BoutonRAZ = 3; // Bouton RAZ
const int ButtonPin1 = 9; // Bouton poussoir BUZZER n°1 (Bleu)
const int ButtonPin2 = 10; // Bouton poussoir BUZZER n°2 (Jaune)
const int ButtonPin3 = 11; // Bouton poussoir BUZZER n°3 (Vert)
const int ButtonPin4 = 12; // Bouton poussoir BUZZER n°4 (Rouge)
// Déclaration des relais
const int Relais1 = 4; // Relais n°1
const int Relais2 = 5; // Relais n°2
const int Relais3 = 6; // Relais n°3
const int Relais4 = 7; // Relais n°4
// Déclaration des sorties
const int LedAppui = 13; // Sortie LED si appui sur un bouton poussoir de BUZZER
const int Buzzer = 8; // Sortie Son du BUZZER
// Affectation de la valeur zéro aux variables des boutons pousoirs
int EtatBouton1 = 0; // Bouton pousoir n°1
int EtatBouton2 = 0; // Bouton pousoir n°2
int EtatBouton3 = 0; // Bouton pousoir n°3
int EtatBouton4 = 0; // Bouton pousoir n°4
int EtatBoutonRaz = 0; // Bouton pousoir RAZ
void setup ()
{
// Initailisation des sorties de l'Arduino
pinMode(Relais1, OUTPUT);
pinMode(Relais2, OUTPUT);
pinMode(Relais3, OUTPUT);
pinMode(Relais4, OUTPUT);
pinMode(LedAppui, OUTPUT);
pinMode(Buzzer, OUTPUT);
// Initailisation des entrées de l'Arduino
pinMode(ButtonPin1, INPUT);
pinMode(ButtonPin2, INPUT);
pinMode(ButtonPin3, INPUT);
pinMode(ButtonPin4, INPUT);
}
void loop ()
{
// Nous effectuons une lecture des pousoirs 1 à 4 ainsi que du poussoir Raz,
// nous pouvons ensuite travailler sur les valeurs (Haut ou Bas) des pousoirs...
digitalWrite(Relais1, LOW);
digitalWrite(Relais2, LOW);
digitalWrite(Relais3, LOW);
digitalWrite(Relais4, LOW);
digitalWrite(LedAppui, LOW);
digitalWrite(Buzzer, LOW);
// ***---*** Etude des Cas ***---***
// *** Cas du Bouton poussoir n°1 ***
EtatBouton1 = digitalRead(ButtonPin1);
if (EtatBouton1 == HIGH) // Si le bouton 1 est activé
{
digitalWrite(Relais1, HIGH); // Allume la Led du bouton n°1
digitalWrite(LedAppui, HIGH); // Allume la Led du Buzzer
digitalWrite(Buzzer, HIGH); // Active le son du Buzzer pendant 1 seconde
delay(1000);
digitalWrite(Buzzer, LOW); // Désactive le son du BUZZER
while (EtatBoutonRaz != HIGH) // Attente d'appui sur poussoir RAZ
{
EtatBoutonRaz = digitalRead(BoutonRAZ);
}
digitalWrite(Relais1, LOW); // Eteind la led du bouton n°1
digitalWrite(LedAppui, LOW); // Eteind la Led du Buzzer
EtatBouton1 = 0; // Affectation de la valeur zéro au poussoir n°1
EtatBoutonRaz = 0; // Affectation de la valeur zéro au poussoir RAZ
}
// *** Cas du Bouton poussoir n°2 ***
EtatBouton2 = digitalRead(ButtonPin2);
if (EtatBouton2 == HIGH) // Si le bouton 2 est activé
{
digitalWrite(Relais2, HIGH); // Allume la led du bouton n°2
digitalWrite(LedAppui, HIGH); // Allume la Led du BUZZER
digitalWrite(Buzzer, HIGH); // Active le son du BUZZER pendant 1 seconde
delay(1000);
digitalWrite(Buzzer, LOW); // Désactive le son du BUZZER
while (EtatBoutonRaz != HIGH) // Attente d'appui sur poussoir RAZ
{
EtatBoutonRaz = digitalRead(BoutonRAZ);
}
digitalWrite(Relais2, LOW); // Eteind la led du bouton n°2
digitalWrite(LedAppui, LOW); // Eteind la Led du BUZZER
EtatBouton2 = 0; // Affectation de la valeur zéro au poussoir n°2
EtatBoutonRaz = 0; // Affectation de la valeur zéro au poussoir RAZ
}
// *** Cas du bouton poussoir n°3 ***
EtatBouton3 = digitalRead(ButtonPin3);
if (EtatBouton3 == HIGH) // Si le bouton 3 est activé
{
digitalWrite(Relais3, HIGH); // Allume la led du bouton n°3
digitalWrite(LedAppui, HIGH); // Allume la Led du BUZZER
digitalWrite(Buzzer, HIGH); // Active le son du BUZZER pendant 1 seconde
delay(1000);
digitalWrite(Buzzer, LOW); // Désactive le son du BUZZER
while (EtatBoutonRaz != HIGH) // Attente d'appui sur poussoir RAZ
{
EtatBoutonRaz = digitalRead(BoutonRAZ);
}
digitalWrite(Relais3, LOW); // Eteind la led du bouton n°3
digitalWrite(LedAppui, LOW); // Eteind la Led du BUZZER
EtatBouton3 = 0; // Affectation de la valeur zéro au poussoir n°3
EtatBoutonRaz = 0; // Affectation de la valeur zéro au poussoir RAZ
}
// *** Cas du bouton poussoir n°4 ***
EtatBouton4 = digitalRead(ButtonPin4);
if (EtatBouton4 == HIGH) // Si le bouton 4 est activé
{
digitalWrite(Relais4, HIGH); // Allume la led du bouton n°4
digitalWrite(LedAppui, HIGH); // Allume la Led du BUZZER
digitalWrite(Buzzer, HIGH); // Active le son du BUZZER
delay(1000);
digitalWrite(Buzzer, LOW); // Désactive le son du BUZZER pendant 1 seconde
while (EtatBoutonRaz != HIGH) // Attente d'appui sur poussoir RAZ
{
EtatBoutonRaz = digitalRead(BoutonRAZ);
}
digitalWrite(Relais4, LOW); // Eteind la led du bouton n°4
digitalWrite(LedAppui, LOW); // Eteind la Led du BUZZER
EtatBouton4 = 0; // Affectation de la valeur zéro au poussoir n°4
EtatBoutonRaz = 0; // Affectation de la valeur zéro au poussoir RAZ
}
}