/** * @file mpu_util.h * * @date Jul 27, 2014 * @author Andrey Belomutskiy, (c) 2012-2017 */ #ifndef MPU_UTIL_H_ #define MPU_UTIL_H_ #include "stm32f4xx_hal_flash_ex.h" typedef enum { BOR_Level_None = OB_BOR_OFF, BOR_Level_1 = OB_BOR_LEVEL1, BOR_Level_2 = OB_BOR_LEVEL2, BOR_Level_3 = OB_BOR_LEVEL3 } BOR_Level_t; typedef enum { BOR_Result_Ok = 0x00, BOR_Result_Error } BOR_Result_t; BOR_Level_t BOR_Get(void); #ifndef GPIO_AF_TIM1 #define GPIO_AF_TIM1 1 #endif #ifndef GPIO_AF_TIM2 #define GPIO_AF_TIM2 1 #endif #ifndef GPIO_AF_TIM3 #define GPIO_AF_TIM3 2 #endif #ifndef GPIO_AF_TIM4 #define GPIO_AF_TIM4 2 #endif #ifndef GPIO_AF_TIM5 #define GPIO_AF_TIM5 2 #endif #ifndef GPIO_AF_TIM9 #define GPIO_AF_TIM9 3 #endif #ifndef ADC_TwoSamplingDelay_5Cycles #define ADC_TwoSamplingDelay_5Cycles ((uint32_t)0x00000000) #endif #ifndef ADC_TwoSamplingDelay_20Cycles #define ADC_TwoSamplingDelay_20Cycles ((uint32_t)0x00000F00) #endif #ifndef ADC_CR2_SWSTART #define ADC_CR2_SWSTART ((uint32_t)0x40000000) #endif void baseHardwareInit(void); void turnOnSpi(spi_device_e device); #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ // these need to be declared C style for the linker magic to work void DebugMonitorVector(void); void UsageFaultVector(void); void BusFaultVector(void); void HardFaultVector(void); #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* MPU_UTIL_H_ */ void initSpiModule(SPIDriver *driver, brain_pin_e sck, brain_pin_e miso, brain_pin_e mosi, int sckMode, int mosiMode, int misoMode); void initSpiCs(SPIConfig *spiConfig, brain_pin_e csPin);