TTCAN

User’s Manual

Revision 1.6

manual_about.fm

The TT Interrupt Vector consists of four segments, each four bits long. Each of the bits of the

TTInterrupt Vector can be separately enabled by a corresponding bit in the TT Interrupt Enable register. Once a bit of the TT Interrupt Vector is set, it will remain set until the application program writes a ‘0’ to this bit.

The first segment consists of CfE, ApW, Wtr, and IWT. Each of these interrupts indicates a fatal error condition where the CAN communication is stopped. With the exception of IWT (see chapter 5.2), these error conditions require a re-configuration of the TTCAN module before the communication can be restarted.

The second segment consists of CEL, TxO, TxU, and GTE. Each of these interrupts indicates an error condition where the CAN communication is disturbed. If they are caused by a transient failure, e.g. by disturbance on the CAN bus, they will be handled by the TTCAN protocol’s failure handling and do not require intervention by the application program.

The third segment consists of Dis, GTW, SWE, and TMI. The first two interrupts are caused by Global Time events (Level 2 only) that require a reaction by the application program. The Stop Watch Event and the Time Mark Interrupt provide feedback to the application program when the application has requested the timing of external events or the notification on reaching a specific time. The Time Mark Interrupt can also be used to finish a Gap.

The fourth segment consists of Gap, CSM, SSM, and SBC. These interrupts provide a means to synchronise the application program to the communication schedule.

5.8 Configuration Example

This is a configuration example for a TTCAN system consisting of three nodes (M0, M1, and S0) operating in TTCAN level 2 at a bit rate of 1 MBit/s. All three nodes have a system clock frequency of 10 MHz, the network time unit NTU is 1 ∝s. Two nodes (M0 and M1) are potential time masters, the third node S0 is operating as a time slave.

 

0x00A0

0x0140

0x01E0

0x0280

0x0320

0x03E6

0x0540

0x2000

0x2200

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

M0_Msg2

S0_Msg2

M1_Msg2

Merged_Arb_Win

 

 

 

 

 

 

 

 

 

 

 

 

 

1

S0_Msg3

S0_Msg2

M0_Msg3

M1_Msg3

Arb_Win1

Ref_Msg

Watch

Ref_Gap

Watch_Gap

 

 

 

 

 

 

2

M0_Msg2

S0_Msg2

M1_Msg2

Arb_Win2

M1_Msg4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

S0_Msg3

S0_Msg2

M0_Msg3

M1_Msg3

Arb_Win3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The System Matrix consists of four Basic Cycles 03, each Basic Cycle has five transmission columns at Cycle Time 0x00A0, 0x0140, 0x01E0, 0x0280, and 0x320. The length of the Basic Cycle is 0x03E8 NTUs=1000s=1ms. M0 transmits the messages M0_Msg2 and M0_Msg3 in exclusive time windows. M1 transmits the messages M1_Msg2, M1_Msg3, and M1_Msg4 in exclusive time windows. S0 transmits the messages S0_Msg2 and S0_Msg3 in exclusive time windows. All nodes may transmit in the single or merged arbitrating time windows.

M0 checks whether M1_Msg2 and S0_Msg2 are received on time. M1 checks whether M0_Msg3 and S0_Msg3 are received on time. S0 checks whether M0_Msg2 and M1_Msg4 are received on time.

The messages in the arbitrating time windows are transmitted event-driven, there is no Rx_Trigger to check for their reception.

The time between the trigger for the Reference Message and the Watch_Trigger (and between Tx_Ref_Trigger_Gap and Watch_Trigger_Gap in case of a time gap) is long enough to allow for the retransmission of a disturbed Reference Message.

BOSCH

- 70/77 -

11.11.02

Page 70
Image 70
Bosch Appliances TTCAN user manual Configuration Example