IRQ pin not tripping interrupt

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IRQ pin not tripping interrupt

3,537 Views
MichaelB
Contributor I
Using the SMAC 4.1a simple network template, with a M9S8GT60 processor, my remote (rx) works for a period of time, (from 1 min - 3 days) then suddenly locks up.  This only happens if it is recieving communication on the same channel. (ie I shut the tx off, & it runs fine for 1 week +).  I have managed to capture with BDM what is happening when this happens, & the IRQ pin is driven low (verified on a scope) but the Interrupt flag is never set. I've tried (IRQSC = 00010010) and (IRQSC = 00010011) .  If I manually change the IRQMOD register, the module recovers, but I'm not sure how much of that is related to the BDM.  Any Suggestions?

Message Edited by MichaelB on 03-03-200601:44 PM

Labels (1)
0 Kudos
3 Replies

419 Views
alex_spotw
Contributor III
Hi:

When using the SMAC, be aware of the reentrant interrupts in the receive functions. This could be creating a conflict between the TX process and the RX process that creates your lockup. Your code might be in the middle of a TX , when receives (Rx) a message, and then both processes get lost.

The best way is to modify your code to avoid the reentrant interrupt.

Regards,

Alex
0 Kudos

419 Views
MichaelB
Contributor I

Just so that I'm clear, this would involve disabling the interrupt pin at the start of the tx, then enabling it afterwards.  The clarification I'm after is that the IRQ pin isn't required durring the TX portion?
Thanks

0 Kudos

419 Views
alex_spotw
Contributor III
Hi:

The SMAC code relies on receiving an IRQ request after finishing the TX to change to the Idle mode. That's where the things get more complicated. This means that: yes, the IRQ pin is required during the TX.

I suggest to inspect the SMAC code and try to understands all interactions happening in the TX and RX processes.

Regards,

Alex

Message Edited by alex_spotw on 03-07-200611:45 AM

Message Edited by alex_spotw on 03-07-200611:45 AM

0 Kudos