I'm adding emulated EEPROM support to a project that is being built with the STM32F429ZITx processor. I am able to include the sample code, and I am able to get it to work, but the only way I am able to preserve the data after loading a newly built version (i.e. flashing a new image through the debugger) is to manually modify the flash.ld file to carve out a sector for EEPROM:
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 192K
CCMRAM (rw) : ORIGIN = 0x10000000, LENGTH = 64K
VECTOR (rx) : ORIGIN = 0x8000000, LENGTH = 16K
EEPROM (rx) : ORIGIN = 0x8004000, LENGTH = 48K
FLASH (rx) : ORIGIN = 0x8010000, LENGTH = 1984K
The issue I have is that every time I run the STM32CubeMX software to re-generate the code, it overwrites my changes. Is there any configuration option in the cube software (Version 4.25.0) that will allow me to specify that I have an EEPROM section, and where I want to put it so that it doesn't overwrite it each time?