2016-02-12 07:50 AM
Hi all,
What happens to the microcontroller when there is an interrupt occured during the eeprom writting operation? Because in my case, I have an USART Rx interrupt. The microcontroller is stall when an interruption is occured during the eeprom operation . And reading in my uart rx buffer, I only have the first character of my sent buffer. Is it normal? Thank you2016-02-12 08:27 AM
Yes, normal and documented.
You need to place all code and structures you wish to keep functioning in RAM, anything that touches FLASH will cause a stall. In multi-bank flash devices the operation of the two banks are independent, in order to avoid stalling, all activity must be limited to the inactive bank.2016-02-15 12:32 AM
Hi clive1,
Thank you for your answer! In which document can I find these information please?2016-02-15 02:31 AM
I think the ''Programming Manuals'' ST releases would be the primary place to look, they were broken out separately for the STM32F1 series parts. I've also covered it in the forum dating back to 2006. I'm not really up to citing chapter and verses for the L1's
The unusability of FLASH arrays during programming dates back to the earliest INTEL NOR devices. The nuance ST adds is that it just stuffs wait-states at the processor rather than letting you crash-and-burn.