2013-02-01 02:30 AM
When the virtual eeprom api function is erasing a page, it interrupts systick interrupt.
I toggled a led on every 100us to check systick interrupt in alive, but when the api function start to erase a page(for example 0x08030000), there are no interrupt untill it finishes(it was take around 30ms) It is normal or there are someting else that interrupts the systick interrupt? #stm32f #eeprom2013-02-01 03:25 AM
This seems to be normal, check the Programming Manual of the STM32F2:
''During a write/erase operation to the Flash memory, any attempt to read the Flash memory will caused the bus to stall. Read operations are processed correctly once the program operation has completed. This means that code or data fetches cannot be performed while a write/erase operation is ongoing.'' No code fetching, no program execution. Also read AN3390, 3.5 ''Real-time consideration'' for improving this behaviour.2013-02-01 04:17 AM
If you run/read from FLASH while writing or erasing it the processor will stall. Running from RAM will resolve this conflict and resultant stalling.
2013-02-03 03:23 PM
thanks alot, i should have checked the programming manual carfully.