#include <Toggle.h>
const byte pinBouton = 2;
const byte pinBuzzer = 10;
const byte pinSabreLaser = 8;
Toggle bouton;
bool sabreLaserActif = false;
void eteindreSabreLaser() {
tone(pinBuzzer, 500, 1000); // on joue le son extinction (replacer par l'appel au MP3)
digitalWrite(pinSabreLaser, LOW); // on éteint le laser
sabreLaserActif = false; // on mémorise le nouvel état
}
void allumerSabreLaser() {
tone(pinBuzzer, 1500, 1000); // on joue le son allumage (replacer par l'appel au MP3)
digitalWrite(pinSabreLaser, HIGH); // on allume le laser
sabreLaserActif = true; // on mémorise le nouvel état
}
void setup() {
Serial.begin(115200);
pinMode(pinBuzzer, OUTPUT);
pinMode(pinSabreLaser, OUTPUT);
bouton.begin(pinBouton); // le bouton est câblé en INPUT_PULLUP
Serial.println("prêt");
}
void loop() {
bouton.poll(); // on vérifie l'état du bouton
if (bouton.onPress()) { // le bouton vient d'être appuyé
if (sabreLaserActif) {
// le laser était allumé donc on éteint
eteindreSabreLaser();
} else {
// le laser était éteint donc on allume
allumerSabreLaser();
}
}
}