/* CVO De Verdieping: Arduino
Sketch: Interrupt voorbeeld
Oefening 11 Interrupt
Met een sketch zodat we een LED (pin 13) kunnen aan en uitschakelen
met een drukknop (pin 2). Doe dit met behulp van een interrupt.
De functie void loop() moet leeg zijn.
Houtmeyers Patrick
2023 - 2024
*/
// CONSTANTEN
const int PIN_LED = 13;
const int KNOP_PIN = 2;
// (GLOBALE) VARIABELEN
// VOORBEREIDING
void setup()
{
pinMode(PIN_LED, OUTPUT);
pinMode(KNOP_PIN, INPUT);
int interruptNummer = digitalPinToInterrupt(KNOP_PIN); // Geeft ons 0, pin 2 is INT0
attachInterrupt(interruptNummer, isrToggleLed, RISING);
}
// UITVOERING
void loop()
{
}
// ISR: Interrupt Service Routine
void isrToggleLed()
{
int toestandLed = digitalRead(PIN_LED);
toestandLed = not toestandLed;
digitalWrite(PIN_LED, toestandLed);
}