I am trying to implement EEPROM Emulation on an STM32F07x using the driver supplied by ST. Problem is on attempting to initialise the emulated flash, the driver fails and always returns NO_VALID_PAGE. I have changed the defines for the Page Size and the EEPROM start address to match the Reference Manual but it doesn't work.
Electronic – EEPROM Emulation driver does not work when Page Sizes are 2KB
eepromstm32
Related Topic
- Electrical – STM32 Virtual EEPROM Page Swap not working correctly
- Electronic – Put saved data in flash of STM32 at the end of all other sections
- Electronic – Last address of program in STM32 HAL
- Flash Not Erasing
- Electronic – Trying to understand the FLASH region of an STM32L433
- Electronic – STM32F0 EEPROM read problem with several variables
Best Answer
There is a subtle bug in the eeprom.h file. The calculation of the PAGE1_BASE_ADDRESS is based on 1Kb value page rather than using the define which is supposed to accommodate different page sizes in the MCU's.
Change the define
to: