diff --git a/firmware/basic/basic.c b/firmware/basic/basic.c index d60bff0..819de91 100644 --- a/firmware/basic/basic.c +++ b/firmware/basic/basic.c @@ -126,12 +126,7 @@ void rbInit() { gpioIntEnable(RB_BUSINT); // add this to catch interrupt: /* - void PIOINT3_IRQHandler(void) { - if (gpioIntStatus(RB_BUSINT)) { - // do something - gpioIntClear(RB_BUSINT); - } - } + */ //nrf_init(); @@ -139,3 +134,17 @@ void rbInit() { font=&Font_7x8; ECIES_setup(); } +#define WEAK_ALIAS(f) __attribute__ ((weak, alias (#f))); +void interrupt_undefined(void) { +} + +void businterrupt(void) WEAK_ALIAS(interrupt_undefined); + + +void PIOINT3_IRQHandler(void) { + if (gpioIntStatus(RB_BUSINT)) { + gpioIntClear(RB_BUSINT); + businterrupt(); + } +} + diff --git a/firmware/basic/basic.h b/firmware/basic/basic.h index f754f18..8c6f5d0 100644 --- a/firmware/basic/basic.h +++ b/firmware/basic/basic.h @@ -172,5 +172,4 @@ struct MENU { void handleMenu(const struct MENU *the_menu); - #endif