Chapter 22 FlexCAN
MPC5602P Microcontroller Reference Manual, Rev. 4
Freescale Semiconductor
571
22.4.8.4
Protocol timing
shows the structure of the clock generation circuitry that feeds the CAN Protocol Interface
(CPI) sub-module. The clock source bit (CLK_SRC) in the CTRL Register defines whether the internal
clock is connected to the output of a crystal oscillator (Oscillator Clock) or to the Peripheral Clock
(generally from a PLL). In order to guarantee reliable operation, the clock source should be selected while
the module is in Disable Mode (bit MDIS set in the Module Configuration Register).
Figure 22-15. CAN engine clocking scheme
The crystal oscillator clock should be selected whenever a tight tolerance (to 0.1%) is required in the CAN
bus timing. The crystal oscillator clock has better jitter performance than PLL generated clocks.
NOTE
This clock selection feature may not be available in all MCUs. A particular
MCU may not have a PLL, in which case it would have only the oscillator
clock, or it may use only the PLL clock feeding the FlexCAN module. In
these cases, the CLK_SRC bit in the CTRL Register has no effect on the
module operation.
The FlexCAN module supports a variety of means to setup bit timing parameters that are required by the
CAN protocol. The Control Register has various fields used to control bit timing parameters: PRESDIV,
PROPSEG, PSEG1, PSEG2 and RJW. See
Section 22.3.4.2, “Control Register (CTRL).
The PRESDIV field controls a prescaler that generates the Serial Clock (Sclock), whose period defines the
‘time quantum’ used to compose the CAN waveform. A time quantum is the atomic unit of time handled
by the CAN engine.
Eqn. 22-1
A bit time is subdivided into three segments
1
):
•
SYNC_SEG: This segment has a fixed length of one time quantum. Signal edges are expected to
happen within this section.
1. For further explanation of the underlying concepts please refer to ISO/DIS 11519
–
1, Section 10.3. Reference also the Bosch
CAN 2.0A/B protocol specification dated September 1991 for bit timing.
Peripheral Clock (PLL)
Oscillator Clock (Xtal)
CLK_SRC
Prescaler
(1 .. 256)
Sclock
CPI Clock
f
Tq
f
CANCLK
Prescaler
V
alue
Þ
--------------------------------------------------------
=