XC886/888CLM
Controller Area Network (MultiCAN) Controller
User’s Manual
15-21
V1.3, 2010-02
MultiCAN, V1.0
15.1.6
Message Acceptance Filtering
This section describes the Message Acceptance Filtering capabilities of the MultiCAN
module.
15.1.6.1
Receive Acceptance Filtering
When a CAN frame is received by a CAN node, a unique message object is determined
in which the received frame is stored after successful frame reception. A message object
is qualified for reception of a frame if the following six conditions are fulfilled.
•
The message object is allocated to the message object list of the CAN node by which
the frame is received.
•
Bit MOSTATn.MSGVAL is set.
•
Bit MOSTATn.RXEN is set.
•
Bit MOSTATn.DIR is equal to bit RTR of the received frame.
If bit MOSTATn.DIR = 1 (transmit object), the message object accepts only remote
frames. If bit MOSTATn.DIR = 0 (receive object), the message object accepts only
data frames.
•
If bit MOAMRn.MIDE = 1, the IDE bit of the received frame is evaluated in the
following way: If MOARn.IDE = 1, the IDE bit of the received frame must be set
(indicates extended identifier). If MOARn.IDE = 0, the IDE bit of the received frame
must be cleared (indicates standard identifier).
If bit MOAMRn.MIDE = 0, the IDE bit of the received frame is “don’t care”. In this
case, message objects with standard and extended frames are accepted.
•
The identifier of the received frame matches the identifier stored in the register
MOARn as qualified by the acceptance mask in the MOAMRn register. This means
that each bit of the received message object identifier is equal to the bit field
MOARn.ID, except those bits for which the corresponding acceptance mask bits in
bit field MOAMRn.AM are cleared. These identifier bits are “don’t care” for reception.
Among all messages that fulfill all six qualifying criteria the message object with the
highest receive priority wins receive acceptance filtering and becomes selected to store
the received frame. All other message objects lose receive acceptance filtering.
The following priority scheme is defined for the message objects:
A message object a (MOa) has higher receive priority than a message object b (MOb) if
the following two conditions are fulfilled (see
):
1. MOa has a higher priority class than MOb. This means, the 2-bit priority bit field
MOARa.PRI must be equal or less than bit field MOARb.PRI.
2. If both message objects have the same priority class (MOARa.PRI = MOARb.PRI),
MOb is a list successor of MOa. This means that MOb can be reached by means of
successively stepping forward in the list, starting from a.
*