// const int ledPin = 13;
// const int buttonPin = 2;
// volatile bool ledState = false;
// void toggleLED() {
// ledState = !ledState;
// }
// void setup() {
// pinMode(ledPin, OUTPUT);
// pinMode(buttonPin, INPUT_PULLUP);
// attachInterrupt(digitalPinToInterrupt(buttonPin), toggleLED, RISING);
// Serial.begin(9600);
// Serial.println("Program Maskable Interrupt: LED berkedip saat tombol ditekan");
// }
// void loop() {
// if (ledState) {
// digitalWrite(ledPin, HIGH);
// delay(500);
// digitalWrite(ledPin, LOW);
// delay(500);
// } else {
// digitalWrite(ledPin, LOW);
// }
// }
const int ledPin = 13;
const int buttonPin = 2;
volatile bool ledState = false;
void toggleLED() {
ledState = !ledState;
}
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(buttonPin), toggleLED, FALLING);
Serial.begin(9600);
}
void loop() {
if (ledState) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
Serial.print("LED State: ");
Serial.println(ledState ? "ON" : "OFF");
delay(50);
}