MPC5566 Microcontroller Reference Manual, Rev. 2
Freescale Semiconductor 22-15
22.3.3.3 Free Running Timer (CANx_TIMER)
CANx_TIMER represents a 16-bit free running counter that can be read and written by the CPU. The timer
starts from 0x0000 after Reset, counts linearly to 0xFFFF, and wraps around.
The timer is clocked by the FlexCAN2 bit-clock (which defines the baud rate on the CAN bus). During a
message transmission/reception, it increments by one for each bit that is received or transmitted. When
there is no message on the bus, it counts using the previously programmed baud rate. During freeze mode,
the timer is not incremented.
The timer value is captured at the beginning of the identifier field of any frame on the CAN bus. This
captured value is written into the TIME STAMP entry in a message buffer after a successful reception or
transmission of a message.
Writing to the timer is an indirect operation. The data is first written to an auxiliary register and then an
internal request/acknowledge procedure across clock domains is executed. All this is transparent to the
user, except for the time delay required for the data write to the register. Software can poll the register to
verify the data is written.
22.3.3.4 RX Mask Registers
By negating the CANx_MCR[MBFEN] bit, the CANx_RXGMASK, CANx_RX14MASK, and
CANx_RX15MASK registers are used as acceptance masks for received frame IDs. Three masks are
defined: a global mask, used for RX buffers 0
–13 and 16–63, and two extra masks dedicated for buffers 14
and 15.
28
LOM
Listen-only mode. Configures FlexCAN2 to operate in listen-only mode. In this mode, the FlexCAN2 module
receives messages without giving any acknowledge. It is not possible to transmit any message in this mode.
0 FlexCAN2 module is in normal active operation, listen only mode is deactivated
1 FlexCAN2 module is in listen only mode operation
29–31
PROPSEG
[0:2]
Propagation segment. Defines the length of the propagation segment in the bit time. The valid
programmable values are 0–7.
1
One time quantum is equal to the S clock period.
Address: Base + 0x0008 Access: User read/write
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
R 0 0 0 0 0 00000000000
TIMER
W
Reset00000000000000000000000000000000
Figure 22-5. Free Running Timer (CANx_TIMER)
Table 22-8. CANx_CR Field Descriptions
Bits Description
Propagation Segment Time (PROPSEG + 1) Time Quanta×=
Time Quantum = one S clock period