Functional Description
801
SLAU723A – October 2017 – Revised October 2018
Copyright © 2017–2018, Texas Instruments Incorporated
Controller Area Network (CAN) Module
tTSeg1 = tProp + tPhase1
where
•
tTSeg1 = (2 × t
q
) + (1 × t
q
•
tTSeg1 = 3 × t
q
(21)
tTSeg2 = tPhase2
where
•
tTSeg2 = (Information Processing Time + 1) × t
q
•
tTSeg2 = 1 × t
q
(22)
\\Assumes IPT = 0
tSJW = 1 × t
q
(23)
\\Least of 4, Phase1 and Phase2
In the previous examples, the bit field values for the CANBIT register are as follows (see
Table 11-4. CANBIT Register Values for High Baud
Rate Example
Bit
Value
TSEG2
= TSeg2 – 1
= 1 – 1
= 0
TSEG1
= TSeg1 – 1
= 3 – 1
= 2
SJW
= SJW – 1
= 1 – 1
= 0
BRP
= Baud rate prescaler – 1
= 5 – 1
= 4
The final value programmed into the CANBIT register = 0x0204.
11.3.16.2 Example for Bit Timing at Low Baud Rate
In this example, the frequency of the CAN clock is 50 MHz, and the bit rate is 100 kbps.
bit time = 10 µs = n × t
q
= 10 × t
q
(24)
t
q
= 1 µs
(25)
t
q
= (Baud rate Prescaler) / CAN Clock
(26)
Baud rate Prescaler = t
q
× CAN Clock
(27)
Baud rate Prescaler = 1E–6 × 50E6 = 50
(28)
tSync = 1 × t
q
= 1 µs
(29)
\\fixed at 1 time quanta
delay of bus driver 200 ns
(30)
delay of receiver circuit 80 ns
(31)
delay of bus line (40 m) 220 ns
(32)
tProp 1 µs = 1 × t
q
(33)
\\1 µs is next integer multiple of tq
bit time = tSync + tTSeg2 = 10 × t
q
(34)
bit time = tSync + tProp + tPhase 1 + tPhase2
(35)
tPhase 1 + tPhase2 = bit time – tSync – tProp
(36)
tPhase 1 + tPhase2 = (10 × t
q
) – (1 × t
q
) – (1 × t
q
)
(37)
tPhase 1 + tPhase2 = 8 × t
q
(38)
tPhase1 = 4 × t
q
(39)
tPhase2 = 4 × t
q
(40)