summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/main.c b/main.c
index 86695c0..6a07711 100644
--- a/main.c
+++ b/main.c
@@ -138,25 +138,33 @@ static inline int is_pressed(uint8_t btn)
ISR(FPM_INT_VEC)
{
+ cli();
+
if (fpm_match()) {
unlock();
fpm_led(BREATHE, BLUE, 1);
} else {
fpm_led(BREATHE, RED, 1);
}
+
+ sei();
}
ISR(BTN_INT_VEC)
{
uint16_t id;
+ cli();
+
if (is_pressed(FRONT_LOCK_PIN)) {
lock();
fpm_led(FLASH, RED, 1);
} else if (is_pressed(BACK_LOCK_PIN)) {
lock();
+ fpm_led(FLASH, RED, 1);
} else if (is_pressed(BACK_UNLOCK_PIN)) {
unlock();
+ fpm_led(FLASH, BLUE, 1);
} else if (is_pressed(ENROLL_PIN)) {
id = fpm_match();
if (id == 1 || id == 2) {
@@ -169,4 +177,6 @@ ISR(BTN_INT_VEC)
} else
fpm_led(BREATHE, RED, 1);
}
+
+ sei();
}