cancel
Showing results for 
Search instead for 
Did you mean: 

Is a single FSMC access interruptable ?

Seven Zeng
Associate

Hi,

I'm wondering if a FSMC access interruptable? in another word, do I have to disable interrupt before accessing to the external memory with FSMC, then recover the interrupt status after? Or just use it as it is a internal memory, access it freely?

A FSMC access might take many mcu tick, if the program is interrupted when accessing to the external device, will the timing be corrupted?

any comments are appreciated!

Thanks!

1 ACCEPTED SOLUTION

Accepted Solutions
Danish1
Lead II

There was a very old errata item for stm32f427 (amongst others) that said that if you have a CPU interrupt during FMC read, the data might be corrupted.

(The workaround for Revision A was either to disable interrupts or use DMA to access FMC).

This only present on Revision A so it was one of the first items to be fixed by updated hardware with no workaround needed.

And ever since then I have had no problems treating memory-mapped external static RAM just like any other RAM. I think ST have it all under control.

Hope this helps,

Danish

View solution in original post

2 REPLIES 2
Danish1
Lead II

There was a very old errata item for stm32f427 (amongst others) that said that if you have a CPU interrupt during FMC read, the data might be corrupted.

(The workaround for Revision A was either to disable interrupts or use DMA to access FMC).

This only present on Revision A so it was one of the first items to be fixed by updated hardware with no workaround needed.

And ever since then I have had no problems treating memory-mapped external static RAM just like any other RAM. I think ST have it all under control.

Hope this helps,

Danish

What if the current FSMC access is interrupted and followed by another FSMC access?