This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

CAN flags interrupts strange behaviour (lpc23xx)

Hi,

I'm using CAN bus with interrupts and a circular buffer for transmit
frames.I have 2 volatile pointers (rear/front) and a volatile frame
counter vars that I'm managing in the CAN ISR and in the push/pull
routines.

But after a random number of transmitted frames, the ISR stopped
generating interrupts without apparent reason.

But After deep debugging, it seems even if a frame is transmitted and
at the same time , I'm desactivating CAN interrupts , the "tx done
interrupt" flag is never set !!! So when I reactivate again , the ISR
is never called again ...
Note : In the push / pull code , I briefly desactivate the Can
interrupt in order to preserve the pointers/counter integrity.

How can I use circular buffer with this Can controler weak ?

thanks in advance

0