ISR not served
Company  
ST Home | Microcontrollers

Index  »  ARM7 STR7  »  ISR not served
     
   ISR not served
 Moderated by :   »  AnisAS  -  coucou

Author
beginning argument    ( Replies received: 1 )
Bummibaer   Posted 10-06-2008 at 10:46   



Registered on :
09-13-2007

From Germany

Messages : 14

 OFF-Line

Hello,

I've an extremely nerving problem.
I debug with the IAR C-Spy. In the first run
it runs fine. But after I do the the softreset, some
interrupts aren't served.
I.E. I'm waiting for an UART-Int:
At the stage are set:
UART1->SR TxEmpty=1
UART1->IER TxEmptyIE=1
EIC->ICR 0x1
EIC->CICR 0xA
EIC->CIPR 0x4
EIC-IER0 0x4C21

But the only ISR served is the regularly Timer-ISR (@1ms).

Because the interrupt-handling is somewhat sophisticated,
I would be happy for any guesses.

Thanks,

Steffen

BTW,
the Processor ist the STR710F



 Profile   Quote  
volius   Posted 10-06-2008 at 16:40   



Registered on :
09-12-2006

From UK (United Kingdom)

Messages : 133

 OFF-Line

Hi Steffen,

You listed the contents of some of the MCU's registers, but I'm not sure at which point you read them. If it's when you experience the problem, then there is your explaination: the EIC.CICR is 10 (UART1 interrupt channel) and EIC.CIPR is 4 (most likely, the priority you assigned to the UART1 interrupt). Basically, the EIC never exited the UART1 interrupt, so only an interrupt with a higher priority can be served (the timer?).
Maybe the softreset that you are referring to does not actually reset the EIC? You can reset the EIC in your initialization code, just to be safe.

Regards,
- mike



 Profile   Quote  
On Top

Search in the forums
 
Jump To