XC912BC32CFU8 Motorola Semiconductor Products, XC912BC32CFU8 Datasheet - Page 267

no-image

XC912BC32CFU8

Manufacturer Part Number
XC912BC32CFU8
Description
M68HC12B Family Data Sheet
Manufacturer
Motorola Semiconductor Products
Datasheet
16.3.3 Transmit Structures
M68HC12B Family — Rev. 8.0
MOTOROLA
The msCAN12 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
All three buffers have a 13-byte data structure similar to the outline of the receive
buffers (see
transmit buffer priority register (TBPR) contains an 8-bit local priority field (PRIO).
See
To transmit a message, the CPU12 has to identify an available transmit buffer
which is indicated by a set transmit buffer empty (TXE) flag in the msCAN12
transmitter flag register (CTFLG). See
Register.
The CPU12 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 msCAN12 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
software to reload the buffer.
If more than one buffer is scheduled for transmission when the CAN bus becomes
available for arbitration, the msCAN12 uses the local priority setting of the three
buffers for prioritizing. 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 to be the highest priority.
The internal scheduling process takes place whenever the msCAN12 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
msCAN12 grants the request, if possible, by setting the corresponding abort
request acknowledge (ABTAK) and the TXE flag to release the buffer and by
generating a transmit interrupt. The transmit interrupt handler software can tell from
the setting of the ABTAK flag whether the message was aborted (ABTAK = 1)
or sent in the meantime (ABTAK = 0).
1. The transmit interrupt is generated only if not masked. A polling scheme can be applied on TXE
also.
16.11.5 Transmit Buffer Priority
16.11 Programmer’s Model of Message
(1)
when TXE is set, and this can be used to drive the application
msCAN12 Controller
Figure
Register.
16.12.7 msCAN12 Transmitter Flag
16-2.
Storage). An additional
msCAN12 Controller
Message Storage
Data Sheet
267

Related parts for XC912BC32CFU8