QSPI Interrupt

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

QSPI Interrupt

跳至解决方案
1,834 次查看
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 解答
660 次查看
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 回复数
661 次查看
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 项奖励
回复
660 次查看
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 项奖励
回复