Flash Command complete interrupt receiving in loop. Stopped after handling Read Collision interrupt.

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Flash Command complete interrupt receiving in loop. Stopped after handling Read Collision interrupt.

841件の閲覧回数
tanmay
Contributor I

Hi,

While writing/erasing flash at some random instance controller was continuously arriving in Flash Command Complete Interrupt. The behavior was very random and occurring very rarely.

While searching for solution I observed that same ISR was mentioned for flash command complete and read collision error interrupt in Vector table (vector.c). Both cases are seemed to be handled in ISR too. But while writing and erasing flash only command complete interrupt is enabled/disabled but not Read Collision interrupt. When I added enabling and disabling of Read Collision interrupt in parallel to Command Complete interrupt the issue was observed to be resolved. So I have following questions:

  1. Why only ISR assignment for read collision error interrupt? It was not enabled by default.
  2. Is there any other reason for particular behavior?


Controller: K10_100 Series controller without FlexMemory.

Processor Expert Version: Driver Suite v10.4

0 件の賞賛
3 返答(返信)

825件の閲覧回数
Alexis_A
NXP TechSupport
NXP TechSupport

Hello Tanmay,

As you may notice, since you only have one flash controller and to ensure the information stored in the memory is reliable, is recommendable to use one flash operation at the time. If you have more than one, the information stored could not be reliable and that could be the reason is not enabled by default

So be careful with the flash operations that this not use the same flash space.

Best Regards,

Alexis Andalon

0 件の賞賛

820件の閲覧回数
tanmay
Contributor I

Thank you. Flash read writes are implemented in the code generated by Processor Expert. But isn't read collision error is to avoid such case?

0 件の賞賛

789件の閲覧回数
Alexis_A
NXP TechSupport
NXP TechSupport

Hello @tanmay,

This is only to notify if there was a flash operation while you called another one if you look at the Flash_main and see the condition, it only returns to the main if this kind of error happens to not overlap flash operations.

Best Regards,

Alexis Andalon

0 件の賞賛