19.3.4
Configuring a Transmit Message Object
The following steps illustrate how to configure a transmit message object.
1.
In the
CAN IFn Command Mask (CANIFnCMASK)
register:
■ Set the
WRNRD
bit to specify a write to the
CANIFnCMASK
register; specify whether to
transfer the
IDMASK
,
DIR
, and
MXTD
of the message object into the
CAN IFn
registers using
the
MASK
bit
■ Specify whether to transfer the
ID, DIR
,
XTD
, and
MSGVAL
of the message object into the
interface registers using the
ARB
bit
■ Specify whether to transfer the control bits into the interface registers using the
CONTROL
bit
■ Specify whether to clear the
INTPND
bit in the
CANIFnMCTL
register using the
CLRINTPND
bit
■ Specify whether to clear the
NEWDAT
bit in the
CANNWDAn
register using the
NEWDAT
bit
■ Specify which bits to transfer using the
DATAA
and
DATAB
bits
2.
In the
CANIFnMSK1
register, use the
MSK[15:0]
bits to specify which of the bits in the 29-bit
or 11-bit message identifier are used for acceptance filtering. Note that
MSK[15:0]
in this
register are used for bits [15:0] of the 29-bit message identifier and are not used for an 11-bit
identifier. A value of 0x00 enables all messages to pass through the acceptance filtering. Also
note that in order for these bits to be used for acceptance filtering, they must be enabled by
setting the
UMASK
bit in the
CANIFnMCTL
register.
3.
In the
CANIFnMSK2
register, use the
MSK[12:0]
bits to specify which of the bits in the 29-bit
or 11-bit message identifier are used for acceptance filtering. Note that
MSK[12:0]
are used
for bits [28:16] of the 29-bit message identifier; whereas
MSK[12:2]
are used for bits [10:0] of
the 11-bit message identifier. Use the
MXTD
and
MDIR
bits to specify whether to use
XTD
and
DIR
for acceptance filtering. A value of 0x00 enables all messages to pass through the
acceptance filtering. Also note that in order for these bits to be used for acceptance filtering,
they must be enabled by setting the
UMASK
bit in the
CANIFnMCTL
register.
4.
For a 29-bit identifier, configure
ID[15:0]
in the
CANIFnARB1
register for bits [15:0] of the
message identifier and
ID[12:0]
in the
CANIFnARB2
register for bits [28:16] of the message
identifier. Set the
XTD
bit to indicate an extended identifier; set the
DIR
bit to indicate transmit;
and set the
MSGVAL
bit to indicate that the message object is valid.
5.
For an 11-bit identifier, disregard the
CANIFnARB1
register and configure
ID[12:2]
in the
CANIFnARB2
register for bits [10:0] of the message identifier. Clear the
XTD
bit to indicate a
standard identifier; set the
DIR
bit to indicate transmit; and set the
MSGVAL
bit to indicate that
the message object is valid.
6.
In the
CANIFnMCTL
register:
■ Optionally set the
UMASK
bit to enable the mask (
MSK
,
MXTD
, and
MDIR
specified in the
CANIFnMSK1
and
CANIFnMSK2
registers) for acceptance filtering
■ Optionally set the
TXIE
bit to enable the
INTPND
bit to be set after a successful transmission
1361
June 18, 2014
Texas Instruments-Production Data
Tiva
™
TM4C1294NCPDT Microcontroller