#include "IncrEncoder.h" #include "stm32f1xx_ll_gpio.h" #include "stm32f1xx_ll_bus.h" #include "stm32f1xx_ll_exti.h" int index_passed = 0; void init(void){ // use timer in encoder mode (14.3.16) // attach interrupt to pa5 for i // enable gpio clock // configure pin // attach interrupt? LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_GPIOA); LL_GPIO_InitTypeDef index_pin_conf; index_pin_conf.Mode = LL_GPIO_MODE_FLOATING; index_pin_conf.Pin = LL_GPIO_PIN_5; LL_GPIO_Init(GPIOC, &index_pin_conf); NVIC_SetPriority(EXTI9_5_IRQn, 12); // prio?? NVIC_EnableIRQ(EXTI9_5_IRQn); } void EXTI9_5_IRQHandler(void){ index_passed = 1; // TODO clear pending } int isAbsolute(void); int getAngle(void);