English
Language : 

DS80C390_00 Datasheet, PDF (149/155 Pages) Dallas Semiconductor – High-Speed Microcontroller User’s Guide Supplement
DS80C390 High-Speed Microcontroller User’s Guide Supplement
3 & 4. The PHASE_SEG1 and PHASE_SEG2 time segments compensate for edge phase errors. The
PHASE_SEG1 and PHASE_SEG2 time segments can be lengthened or shorted through the use of
the SJW1 and SJW0 bits in the CAN 0/1 Bus Timing Register Zero.
The CAN bus is data is evaluated at the sample point. A time quantum (tQU) is a unit of time derived from
the division of the microprocessor crystal oscillator by both the Baud Rate Prescaler (programmed by the
BPR5 - BPR0 bits in the CAN 0/1 Bus Timing register) and the System Clock Divider (programmed by
the SCD2 - SCD0 bits in the Clock Output Register). Combining the PROP_SEG and PHASE_SEG1
time segments into one time period termed tTSEG1 and equating the SYNC_SEG time segment to tSYNC_SEG
and PHASE_SEG2 to tTSEG2, provides the basis for the time segments outlined below and in the CAN Bus
Timing SFR Register descriptions. These are shown in the following figure.
Figure 16- 11 Bit Timing
SYNC_SEG
Nominal Bit Time
PROP_SEG
PHASE_SEG1
PHASE_SEG2
tSYNC-SEG
1 Bit Time
tSEG1
SAMPLE
POINT
tSEG2
1 tQU
Time Quanta
TRANSMIT
1 tQU
Time Quanta
3 tQU – 16 tQU
2 tQU – 8 tQU
SAMPLE
POINT
The CAN 0/1 Bus Timing Register Zero (C0BT0/C1BT0) contains the control bits for the PHASE_SEG1
and PHASE_SEG2 time segments as well as the Baud Rate Prescaler (BPR5-0) bits. CAN 0/1 Bus
Timing Register One (C0BT1/C1BT1) controls the sampling rate, the Time Segment Two bits that
control the number of clock cycles assigned to the Phase Segment 2 portion, and the Time segment One
bits that determine the number of clock cycles assigned to the Phase Segment 1 portion. The value of both
of the Bus Timing registers are automatically loaded into the CAN module following each software
change of the SWINT bit from a 1 to a 0 by the microcontroller. The bit timing parameters must be
configured before starting operation of the CAN module. These registers can only be modified during a
software initialization (SWINT = 1), when the CAN module is NOT in a bus off mode, and after the
removal of a system reset or a CAN reset. To avoid unpredictable behavior of the CAN module the Bus
149 of 155