diff options
Diffstat (limited to 'project/Core/Src')
| -rw-r--r-- | project/Core/Src/Project/local_control.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/project/Core/Src/Project/local_control.c b/project/Core/Src/Project/local_control.c index 6b6f5e4..7a4ba2f 100644 --- a/project/Core/Src/Project/local_control.c +++ b/project/Core/Src/Project/local_control.c @@ -20,6 +20,7 @@ void local_control_loop() { } void EXTI9_5_IRQHandler() { + static int prevStatus = -1; if (~EXTI->PR1 & EXTI_PR1_PIF9) return; EXTI->PR1 |= EXTI_PR1_PIF9; @@ -27,6 +28,10 @@ void EXTI9_5_IRQHandler() { if (project_get_mode() != LOCAL_MODE) return; - int status = !(GPIOC->IDR & GPIO_PIN_9); - printf("Other %i\r\n", status); + int status = !!(GPIOA->IDR & GPIO_PIN_9); + if (prevStatus == status) + return; + prevStatus = status; + + printf("EXT BUTTON %i\r\n", status); } |
