Forums

CAN Interrupt or FullCAN on LPC2294

Started by Boris Kralik March 12, 2008
Hi all.
We have a discussion about implementing CAN controllers. We are using
two CANs, devices on I2C bus, devices on ISP and UART bus.Interrupt
sources are ExternalInterrupt 0 and 2, LUTerror interrupt, Timer 0 and
1 and WatchDog interrupt. I thing, that we don't need CANs Rx
Interrupts, I implementing fullCAN and it works fine. My colleagues
think inverse opinion.

What is yours opinion or how you works with CAN buses ?

PS: Errarta sheet not contain relevant information, why FullCAN not.

An Engineer's Guide to the LPC2100 Series

--- In l..., "Boris Kralik" wrote:
>
> Hi all.
> We have a discussion about implementing CAN controllers. We are using
> two CANs, devices on I2C bus, devices on ISP and UART bus.Interrupt
> sources are ExternalInterrupt 0 and 2, LUTerror interrupt, Timer 0 and
> 1 and WatchDog interrupt. I thing, that we don't need CANs Rx
> Interrupts, I implementing fullCAN and it works fine. My colleagues
> think inverse opinion.

Well, you have to supply execution to your CAN controllers and
controller code somehow. Whether you can get away with polling it is
dependent on your OS/application design and loading.

> What is yours opinion or how you works with CAN buses ?

I use a preemptive OS, (Rowley ctl), and so all my I/O needs to be
interrupt-driven. It works fine on my 2129. I have 2 CANs 2 UARTS,
timer0, timer1, capture/match, SPI and I2C. The interrupts send
semaphore units to signal that bytes and/or protocol-units have been
received and queued. I cannot get my app done with polling.

Rgds,
Martin