09.12.2012 Views

RM0090: Reference manual - STMicroelectronics

RM0090: Reference manual - STMicroelectronics

RM0090: Reference manual - STMicroelectronics

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>RM0090</strong> Controller area network (bxCAN)<br />

24.8 bxCAN interrupts<br />

Four interrupt vectors are dedicated to bxCAN. Each interrupt source can be independently<br />

enabled or disabled by means of the CAN Interrupt Enable Register (CAN_IER).<br />

Figure 237. Event flags and interrupt generation<br />

RQCP0<br />

CAN_TSR RQCP1 +<br />

RQCP2<br />

CAN_RF0R<br />

CAN_RF1R<br />

CAN_ESR<br />

CAN_MSR<br />

FMP0<br />

FULL0<br />

FOVR0<br />

FMP1<br />

FULL1<br />

FOVR1<br />

EWGF<br />

EPVF<br />

BOFF<br />

1≤LEC≤6<br />

WKUI<br />

SLAKI<br />

CAN_IER<br />

TMEIE<br />

FMPIE0<br />

FFIE0<br />

FOVIE0<br />

FMPIE1<br />

FFIE1<br />

FOVIE1<br />

ERRIE<br />

EWGIE<br />

EPVIE<br />

BOFIE<br />

LECIE<br />

WKUIE<br />

SLKIE<br />

&<br />

&<br />

&<br />

&<br />

&<br />

&<br />

&<br />

&<br />

&<br />

&<br />

&<br />

TRANSMIT<br />

INTERRUPT<br />

● The transmit interrupt can be generated by the following events:<br />

– Transmit mailbox 0 becomes empty, RQCP0 bit in the CAN_TSR register set.<br />

– Transmit mailbox 1 becomes empty, RQCP1 bit in the CAN_TSR register set.<br />

– Transmit mailbox 2 becomes empty, RQCP2 bit in the CAN_TSR register set.<br />

● The FIFO 0 interrupt can be generated by the following events:<br />

– Reception of a new message, FMP0 bits in the CAN_RF0R register are not ‘00’.<br />

– FIFO0 full condition, FULL0 bit in the CAN_RF0R register set.<br />

– FIFO0 overrun condition, FOVR0 bit in the CAN_RF0R register set.<br />

● The FIFO 1 interrupt can be generated by the following events:<br />

– Reception of a new message, FMP1 bits in the CAN_RF1R register are not ‘00’.<br />

– FIFO1 full condition, FULL1 bit in the CAN_RF1R register set.<br />

+<br />

+<br />

+<br />

FIFO 0<br />

INTERRUPT<br />

FIFO 1<br />

INTERRUPT<br />

ERRI<br />

CAN_MSR<br />

Doc ID 018909 Rev 3 678/1416<br />

&<br />

&<br />

&<br />

+<br />

STATUS CHANGE<br />

ERROR<br />

INTERRUPT

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!