QSPI Interrupt

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 
1,877件の閲覧回数
Stefan_75
Contributor II

Hi,

 

I am using the QSPI with enabled interrupt (SPIFE = 1) (ICM Sourcenb. 18). If I have to transfer some data, I put them in the queue and start the transfer. After that I continue with other C-programm parts.

When the finished interrupt (SPIF) occurs, I reset the interrupt flag in the SPI-intrrupt-routine and wait for the regular call of the SPI part and make my oprations.

 

The porgamm works well for some time, but after a few minutes the QSPI interrupt and all other normal interrupts won´t work any more (e.g. PIT).

 

Instead of the "normal" interrupts I get the interrupt nb. 58 which is "not used (reserved)" (Reference manual). 

 

Before I worked with the QSPI interrupt enable I made all the SPI traffic in one call (SPIFE = 0), and that worked fine. 

 

Does anybody knows what this interrupt (nb.58) mean, or has any suggestion? 

 

Target: MCF52235 

CW Version 7.1

Coldfire TCP Stack and RTOS

 

Thanks for any help.

 

Stefan

ラベル(1)
0 件の賞賛
返信
1 解決策
703件の閲覧回数
admin
Specialist II

The reserved interrupt can happen due to overflow of interrupt stack or some buffer.

Check, if you disabled QSPI after the needed operations.

元の投稿で解決策を見る

0 件の賞賛
返信
2 返答(返信)
704件の閲覧回数
admin
Specialist II

The reserved interrupt can happen due to overflow of interrupt stack or some buffer.

Check, if you disabled QSPI after the needed operations.

0 件の賞賛
返信
703件の閲覧回数
Stefan_75
Contributor II

Hi Yevgeni,

 

thanks for this answer. It seems to be an interrupt stack overflow. When the intrrupt occurs I disable the interrupt itself (SPIFE=0) and when I start a new transfer I enable it (SPIFE = 1). Now the system works well again.

 

Many thanks.

 

Stefan

0 件の賞賛
返信