#include "stm32g0xx_hal.h" #include "stdbool.h" #include "main.h" #include "sysdata.h" typedef enum startType_t { FIRST_START_AFTER_ERASE = 0, // Flash storage with calibration data will be written with the default values FIRST_START_AFTER_COMPARTIBLE_UPDATE, // Calibration data will be preserved, additional configuration data also preserved FIRST_START_AFTER_INCOMPARTIBLE_UPDATE, // Calibration data will be preserved, additional configuration data is set to default FIRST_START_ERROR // Cannot read memory location, where FIRST_START_ID was saved } startType_t; HAL_StatusTypeDef EEPROM_readConfig(sys_data_t* data); HAL_StatusTypeDef EEPROM_storeConfig(sys_data_t* data, uint8_t withSN); HAL_StatusTypeDef EEPROM_fullRestore(sys_data_t* data); HAL_StatusTypeDef EEPROM_factoryRestore(sys_data_t* data, int resetToDefault); startType_t EEPROM_isFirstStart(uint8_t* fsID);