/* CVO De Verdieping - Arduino
*
* Als men de drukknop op pin 2 even ingedrukt wordt,
* speelt er voor 1 seconde 2 maal een toon op de piëzo
* op pin 10.
* Eenmaal de toon speelt, mag men de drukknop los laten.
*
* Sketch: Deurbel V2
* Oefening 8.3
*
* Houtmeyers Patrick
* 26/11/2023
*/
// CONSTANTEN
const int PIN_DRUKKNOP = 2;
const int PIN_PIEZO = 10; // pin Nr
const int TONE_LA = 440; // Hz
const int TONE_DO = 262; // Hz
const int DUURTIJD = 1000; // ms
// VARIABELEN
int knopWaarde = LOW;
int vorigeKnopWaarde = LOW;
// VOORBEREIDING
void setup() {
pinMode(PIN_DRUKKNOP, INPUT);
}
// UITVOERING
void loop() {
// INVOER
knopWaarde = digitalRead(PIN_DRUKKNOP);
// VERWERKING + UITVOER
if (knopWaarde == HIGH and vorigeKnopWaarde == LOW) { // Stijgende flank
tone(PIN_PIEZO, TONE_LA);
delay(DUURTIJD);
tone(PIN_PIEZO, TONE_DO);
delay(DUURTIJD);
noTone(PIN_PIEZO);
}
vorigeKnopWaarde = knopWaarde;
}