29.01.2015 Views

STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and ...

STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and ...

STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

RM0008<br />

Controller area network (bxCAN)<br />

Figure 193. Dual CAN block diagram (connectivity devices)<br />

Control/Status/Configuration<br />

Master Control<br />

Master Status<br />

Tx Status<br />

Rx FIFO 0 Status<br />

Rx FIFO 1 Status<br />

Interrupt Enable<br />

Error Status<br />

Bit Timing<br />

Filter Master<br />

Filter Mode<br />

Filter Scale<br />

Filter FIFO Assign<br />

Filter Activation<br />

CAN 2.0B Active Core<br />

CAN1 (Master) with 512 bytes SRAM<br />

Master<br />

Tx Mailboxes<br />

Mailbox 0<br />

2<br />

1<br />

Transmission<br />

Scheduler<br />

Memory<br />

Access<br />

Controller<br />

Transmission<br />

Scheduler<br />

Slave<br />

Tx Mailboxes<br />

Mailbox 0 1 2<br />

Master<br />

Receive FIFO 0<br />

Mailbox 0 1 2<br />

Filter 0<br />

Acceptance Filters<br />

1<br />

Master Filters<br />

(0 to n)<br />

Slave<br />

Receive FIFO 0<br />

Mailbox 0 1 2<br />

2<br />

3<br />

Master<br />

Receive FIFO 1<br />

Mailbox 0 1 2<br />

..<br />

..<br />

26<br />

Slave Filters<br />

(n to 27)<br />

Slave<br />

Receive FIFO 1<br />

Mailbox 0 1 2<br />

27<br />

CAN2 (Slave)<br />

Control/Status/Configuration<br />

Master Control<br />

Master Status<br />

Tx Status<br />

Rx FIFO 0 Status<br />

Rx FIFO 1 Status<br />

Interrupt Enable<br />

Error Status<br />

Bit Timing<br />

CAN 2.0B Active Core<br />

Note: CAN 2 start filter bank number n is configurable by writing to<br />

the CAN2SB[5:0] bits in the CAN_ FMR register.<br />

ai16094<br />

22.4 bxCAN operating modes<br />

bxCAN has three main operating modes: initialization, normal <strong>and</strong> Sleep. After a<br />

hardware reset, bxCAN is in Sleep mode to reduce power consumption <strong>and</strong> an internal pullup<br />

is active on CANTX. The software requests bxCAN to enter initialization or Sleep mode<br />

by setting the INRQ or SLEEP bits in the CAN_MCR register. Once the mode has been<br />

entered, bxCAN confirms it by setting the INAK or SLAK bits in the CAN_MSR register <strong>and</strong><br />

the internal pull-up is disabled. When neither INAK nor SLAK are set, bxCAN is in normal<br />

mode. Before entering normal mode bxCAN always has to synchronize on the CAN bus.<br />

Doc ID 13902 Rev 9 545/995

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

Saved successfully!

Ooh no, something went wrong!