Functional Description
23.3.14.1 Configuration of a Transmit Object for Data Frames
shows how a transmit object can be initialized.
Table 23-4. Initialization of a Transmit Object
MsgVal
Arb
Data
Mask
EoB
Dir
NewDat
MsgLst
RxIE
TxIE
IntPnd
RmtEn
TxRqst
1
appl.
appl.
appl.
1
1
0
0
0
appl.
0
appl.
0
The arbitration bits (ID[28:0] and Xtd bit) are given by the application. They define the identifier and type of
the outgoing message. If an 11-bit identifier (standard frame) is used (Xtd = ‘0’), it is programmed to
ID[28:18]. In this case, ID[17:0] can be ignored.
The data registers (DLC[3:0] and Data0-7) are given by the application. TxRqst and RmtEn should not be
set before the data is valid.
If the TxIE bit is set, the IntPnd bit will be set after a successful transmission of the message object.
If the RmtEn bit is set, a matching received remote frame will cause the TxRqst bit to be set; the remote
frame will autonomously be answered by a data frame.
The mask bits (Msk[28:0], UMask, MXtd, and MDir bits) may be used (UMask=’1’) to allow groups of
remote frames with similar identifiers to set the TxRqst bit. The Dir bit should not be masked. For details,
see
. Identifier masking must be disabled (UMask = ‘0’) if no remote frames are allowed
to set the TxRqst bit (RmtEn = ‘0’).
23.3.14.2 Configuration of a Transmit Object for Remote Frames
It is not necessary to configure transmit objects for the transmission of remote frames. Setting TxRqst for
a receive object causes the transmission of a remote frame with the same identifier as the data frame for
which this receive object is configured.
23.3.14.3 Configuration of a Single Receive Object for Data Frames
shows how a receive object for data frames can be initialized.
Table 23-5. Initialization of a single Receive Object for Data Frames
MsgVal
Arb
Data
Mask
EoB
Dir
NewDat
MsgLst
RxIE
TxIE
IntPnd
RmtEn
TxRqst
1
appl.
appl.
appl.
1
0
0
0
appl.
0
0
0
0
The arbitration bits (ID[28:0] and Xtd bit) are given by the application. They define the identifier and type of
accepted received messages. If an 11-bit Identifier (standard frame) is used (Xtd = ‘0’), it is programmed
to ID[28:18]. In this case, ID[17:0] can be ignored. When a data frame with an 11-bit Identifier is received,
ID[17:0] is set to ‘0’.
The data length code (DLC[3:0]) is given by the application. When the message handler stores a data
frame in the message object, it will store the received data length code and eight data bytes. If the data
length code is less than 8, the remaining bytes of the message object may be overwritten by non specified
values.
The mask bits (Msk[28:0], UMask, MXtd, and MDir bits) may be used (UMask = ’1’) to allow groups of
data frames with similar identifiers to be accepted. The Dir bit should not be masked in typical
applications. If some bits of the mask bits are set to “don’t care,” the corresponding bits of the arbitration
register will be overwritten by the bits of the stored data frame.
If the RxIE bit is set, the IntPnd bit will be set when a received data frame is accepted and stored in the
message object.
If the TxRqst bit is set, the transmission of a remote frame with the same identifier as actually stored in the
arbitration bits will be triggered. The content of the arbitration bits may change if the mask bits are used
(UMask = ’1’) for acceptance filtering.
3900
Controller Area Network (CAN)
SPRUH73H – October 2011 – Revised April 2013
Copyright © 2011–2013, Texas Instruments Incorporated