2021-05-21 02:32 PM
Hi, I am trying to use the ST-CUBE-EEPROM driver to store some settings with touchgfx 4.16.
I have a separate section defined in the linker script, 24kB for 500 variables at the end of the internal flash. It works well if I run it before the touchgfx task starts.
If I try to read a variable while touchgfx task is running I get a WRPERR in the flash status register. I have image assets stored in memory mapped external flash and fonts in internal flash. Am I able to stop touchgfx from locking the section I defined for the EEPROM somehow? Or do I have to go down the same route as suggested for memory mapped external flash by stopping the touchgfx task?
Thanks for the help :)
Russell Burge
2021-05-21 02:38 PM
The internal flash introduces significant stalling issues during write/erase, so highly problematic for real-time work
A structure and direct use of flash is recommended over the eprom emulation
2021-05-22 09:20 AM
Stalling can be really long and a serious issue while erasing. When writing it is typically at a microsecond range and can be tolerated in many projects. Reading should "just work". If it causes a write protection error like WRPERR, there definitely is a bug somewhere.