/** * @file flash_main.h * @brief * * @date Sep 19, 2013 * @author Andrey Belomutskiy, (c) 2012-2014 */ #ifndef FLASH_MAIN_H_ #define FLASH_MAIN_H_ #include "engine_configuration.h" #define FLASH_DATA_VERSION 4635 #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ void readFromFlash(void); void initFlash(void); /** * Because of hardware-related issues, stm32f4 chip is totally * frozen while we are writing to internal flash. Writing the configuration takes * about 1-2 seconds, we cannot afford to do that while the engine is * running so we postpone the write until the engine is stopped. */ void writeToFlash(void); void setNeedToWriteConfiguration(void); /** * @return true if an flash write is pending */ bool getNeedToWriteConfiguration(void); void writeToFlashIfPending(void); #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* FLASH_MAIN_H_ */