
CHAPTER 19 CAN CONTROLLER
Preliminary User’s Manual U16541EJ1V0UM
675
19.10 Message Transmission
19.10.1 Message transmission
In the operational modes “normal operating mode”, “normal operating mode with ABT” and “single-shot mode” and
“self-test mode” of the CAN module, the transmit message search machine is triggered when the TRQ bit is set to 1 in
a message buffer that satisfies the following conditions.
The message buffer has to be assigned to the particular CAN I/F channel (MA0 bit in C0MCONFm register is set
to 1B or larger).
The message buffer has to be configured as a transmit message buffer (MT2 to MT0 bits in C0MCONFm register
are set to 000B).
The message buffer has to be marked ready for CAN protocol processing (RDY bit set (1) in C0MCONFm
register).
The CAN system is a multiplexed communication system. The priority of message transmission within this system
is determined based on message identifiers (IDs).
To facilitate communication processing by application software when there are several messages awaiting
transmission, the CAN module uses hardware to check the priority identifiers and automatically determine which
message has to be sent out first.
This eliminates the need for software-based priority control.
Figure 19-36. Message Processing Example (When PBB Bit = 0)
Message No.
CAN module transmits messages in the following sequence.
Message waiting to be transmitted
ID = 120H
ID = 229H
ID = 223H
ID = 023H
ID = 123H
0
1
2
3
4
5
6
7
8
9
1. Message 6
2. Message 1
3. Message 8
4. Message 5
5. Message 2
The transmit message search machine compares the message buffer that has a new transmit request with the
message buffers in which the TRQ bit is set to 1.
If the new transmit request has the highest priority, the transmit message search machine overwrites the temporary
transmit buffer with the message frame, which is stored in the corresponding message buffer. Overwriting is only
possible as long the transmit process has not already been started for the message frame currently occupying the
temporary transmit buffer. If overwriting of the temporary transmit buffer is impossible, the new transmit request is
sent at a later point in time.
The highest priority is determined according the following rules.