#ifndef GPIO_H #define GPIO_H /* Includes ----------------------------------------------------------------- */ #include #include "bsp/bsp.h" /* Exported constants ------------------------------------------------------- */ #define LASER_Pin GPIO_PIN_8 #define LASER_GPIO_Port GPIOC #define CMPS_RST_Pin GPIO_PIN_6 #define CMPS_RST_GPIO_Port GPIOG #define IMU_HEAT_PWM_Pin GPIO_PIN_6 #define IMU_HEAT_PWM_GPIO_Port GPIOF #define LED_R_Pin GPIO_PIN_12 #define LED_R_GPIO_Port GPIOH #define CMPS_INT_Pin GPIO_PIN_3 #define CMPS_INT_GPIO_Port GPIOG #define CMPS_INT_EXTI_IRQn EXTI3_IRQn #define ADC_BAT_Pin GPIO_PIN_10 #define ADC_BAT_GPIO_Port GPIOF #define LED_G_Pin GPIO_PIN_11 #define LED_G_GPIO_Port GPIOH #define LED_B_Pin GPIO_PIN_10 #define LED_B_GPIO_Port GPIOH #define HW0_Pin GPIO_PIN_0 #define HW0_GPIO_Port GPIOC #define HW1_Pin GPIO_PIN_1 #define HW1_GPIO_Port GPIOC #define HW2_Pin GPIO_PIN_2 #define HW2_GPIO_Port GPIOC #define BUZZER_Pin GPIO_PIN_14 #define BUZZER_GPIO_Port GPIOD #define USER_KEY_Pin GPIO_PIN_0 #define USER_KEY_GPIO_Port GPIOA #define USER_KEY_EXTI_IRQn EXTI0_IRQn #define ACCL_CS_Pin GPIO_PIN_4 #define ACCL_CS_GPIO_Port GPIOA #define ACCL_INT_Pin GPIO_PIN_4 #define ACCL_INT_GPIO_Port GPIOC #define ACCL_INT_EXTI_IRQn EXTI4_IRQn #define GYRO_INT_Pin GPIO_PIN_5 #define GYRO_INT_GPIO_Port GPIOC #define GYRO_INT_EXTI_IRQn EXTI9_5_IRQn #define SPI2_CS_Pin GPIO_PIN_12 #define SPI2_CS_GPIO_Port GPIOB #define GYRO_CS_Pin GPIO_PIN_0 #define GYRO_CS_GPIO_Port GPIOB /* Exported macro ----------------------------------------------------------- */ /* Exported types ----------------------------------------------------------- */ /* Exported functions prototypes -------------------------------------------- */ int8_t BSP_GPIO_RegisterCallback(uint16_t pin, void (*callback)(void)); int8_t BSP_GPIO_EnableIRQ(uint16_t pin); int8_t BSP_GPIO_DisableIRQ(uint16_t pin); #endif