summaryrefslogtreecommitdiff
path: root/project/Core/Src/Project/local_control.c
diff options
context:
space:
mode:
Diffstat (limited to 'project/Core/Src/Project/local_control.c')
-rw-r--r--project/Core/Src/Project/local_control.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/project/Core/Src/Project/local_control.c b/project/Core/Src/Project/local_control.c
index 236e555..1ddcd2a 100644
--- a/project/Core/Src/Project/local_control.c
+++ b/project/Core/Src/Project/local_control.c
@@ -5,9 +5,13 @@
* Author: sowgro
*/
+#include <stm32l4xx.h>
+#include <stdio.h>
+#include "GPIO.h"
+
void local_control_start() {
GPIO_Init();
- NVIC_Enable_IRQ(XTI15_10_IRQn);
+ NVIC_EnableIRQ(EXTI9_5_IRQn);
}
void local_control_loop() {
@@ -15,9 +19,15 @@ void local_control_loop() {
}
void local_control_stop() {
-
+ NVIC_DisableIRQ(EXTI15_10_IRQn);
}
-void XTI15_10_IRQHandler() {
+void EXTI9_5_IRQHandler() {
+ if (~EXTI->PR1 & EXTI_PR1_PIF9)
+ return;
+
+ EXTI->PR1 |= EXTI_PR1_PIF9;
+ int status = !(GPIOC->IDR & GPIO_PIN_9);
+ printf("Other %i\r\n", status);
}