Datasheet

tPhase1 = 2 * t
q
tPhase2 = 2 * t
q
\\tPhase2 = tPhase1
tTSeg1 = tProp + tPhase1
tTSeg1 = (3 * t
q
) + (2 * t
q
)
tTSeg1 = 5 * t
q
tTSeg2 = tPhase2
tTSeg2 = (Information Processing Time + 2) × t
q
tTSeg2 = 2 * t
q
\\Assumes IPT=0
tSJW = 2 * t
q
\\Least of 4, Phase1 and Phase2 = 1
In the above example, the bit field values for the CANBIT register are:
= TSeg2 -1
= 2-1
= 1
TSEG2
= TSeg1 -1
= 5-1
= 4
TSEG1
= SJW -1
= 2-1
= 1
SJW
= Baud rate prescaler - 1
= 1-1
=0
BRP
The final value programmed into the CANBIT register = 0x1440.
15.3.16.2 Example for Bit Timing at Low Baud Rate
In this example, the frequency of the CAN clock is 8 MHz, and the bit rate is 100 Kbps.
bit time = 10 µs = n * t
q
= 10 * t
q
t
q
= 1 µs
t
q
= (Baud rate Prescaler)/CAN Clock
Baud rate Prescaler = t
q
* CAN Clock
Baud rate Prescaler = 1E-6 * 8E6 = 8
tSync = 1 * t
q
= 1 µs \\fixed at 1 time quanta
delay of bus driver 200 ns
delay of receiver circuit 80 ns
delay of bus line (40m) 220 ns
tProp 1 µs = 1 * t
q
\\1 µs is next integer multiple of t
q
bit time = tSync + tTSeg1 + tTSeg2 = 10 * t
q
bit time = tSync + tProp + tPhase 1 + tPhase2
tPhase 1 + tPhase2 = bit time - tSync - tProp
tPhase 1 + tPhase2 = (10 * t
q
) - (1 * t
q
) - (1 * t
q
)
tPhase 1 + tPhase2 = 8 * t
q
tPhase1 = 4 * t
q
569June 18, 2012
Texas Instruments-Production Data
Stellaris
®
LM3S8962 Microcontroller
NRND: Not recommended for new designs.