English
Language : 

MC68HC908AT32 Datasheet, PDF (255/378 Pages) Freescale Semiconductor, Inc – Microcontrollers
Identifier Acceptance Filter
23.4.3 Transmit Structures
The MSCAN08 has a triple transmit buffer scheme to allow multiple messages to be set up in advance
and to achieve an optimized real-time performance. The three buffers are arranged as shown in
Figure 23-2.
All three buffers have a 13-byte data structure similar to the outline of the receive buffers (see 23.12
Programmer’s Model of Message Storage). An additional transmit buffer priority register (TBPR) contains
an 8-bit “local priority” field (PRIO) (see 23.12.5 Transmit Buffer Priority Registers).
To transmit a message, the CPU08 has to identify an available transmit buffer which is indicated by a set
transmit buffer empty (TXE) flag in the MSCAN08 transmitter flag register (CTFLG) (see 23.13.7
MSCAN08 Transmitter Flag Register).
The CPU08 then stores the identifier, the control bits and the data content into one of the transmit buffers.
Finally, the buffer has to be flagged ready for transmission by clearing the TXE flag.
The MSCAN08 then will schedule the message for transmission and will signal the successful
transmission of the buffer by setting the TXE flag. A transmit interrupt will be emitted(1) when TXE is set
and can be used to drive the application software to re-load the buffer.
In case more than one buffer is scheduled for transmission when the CAN bus becomes available for
arbitration, the MSCAN08 uses the local priority setting of the three buffers for prioritzation. For this
purpose, every transmit buffer has an 8-bit local priority field (PRIO). The application software sets this
field when the message is set up. The local priority reflects the priority of this particular message relative
to the set of messages being emitted from this node. The lowest binary value of the PRIO field is defined
as the highest priority.
The internal scheduling process takes place whenever the MSCAN08 arbitrates for the bus. This is also
the case after the occurrence of a transmission error.
When a high priority message is scheduled by the application software, it may become necessary to abort
a lower priority message being set up in one of the three transmit buffers. Because messages that are
already under transmission cannot be aborted, the user has to request the abort by setting the
corresponding abort request flag (ABTRQ) in the transmission control register (CTCR). The MSCAN08
will then grant the request, if possible, by setting the corresponding abort request acknowledge (ABTAK)
and the TXE flag to release the buffer and by emitting a transmit interrupt. The transmit interrupt handler
software can tell from the setting of the ABTAK flag whether the message was actually aborted
(ABTAK = 1) or sent (ABTAK = 0).
23.5 Identifier Acceptance Filter
A flexible, programmable generic identifier acceptance filter has been introduced to reduce the CPU
interrupt loading. The filter is programmable to operate in three different modes:
• Single identifier acceptance filter to be applied to the full 29 bits of the identifier and to these bits
of the CAN frame: RTR, IDE, and SRR. This mode implements a single filter for a full length CAN
2.0B compliant extended identifier.
• Double identifier acceptance filter to be applied to
– The 11 bits of the identifier and the RTR bit of CAN 2.0A messages or
– The 14 most significant bits of the identifier of CAN 2.0B messages
1. The transmit interrupt will occur only if not masked. A polling scheme can be applied on TXE also.
MC68HC908AT32 Data Sheet, Rev. 3.1
Freescale Semiconductor
255