XA-C3 NXP Semiconductors, XA-C3 Datasheet - Page 52
![The XA-C3 is a member of the Philips XA (eXtended Architecture) family of high-performance 16-bit single-chip microcontrollers](/photos/41/53/415313/sot389-1_3d_sml.gif)
XA-C3
Manufacturer Part Number
XA-C3
Description
The XA-C3 is a member of the Philips XA (eXtended Architecture) family of high-performance 16-bit single-chip microcontrollers
Manufacturer
NXP Semiconductors
Datasheet
1.XA-C3.pdf
(68 pages)
Philips Semiconductors
Table 24. Format for storing the CANopen Acknowledge byte
MnFCR: Message n Fragmentation Count Register
MNFCR
An object’s Fragmentation Count Register need not be configured
by the User in DeviceNet systems. However, in CANopen and
OSEK systems, the User must initialize this register.
GCTL: Global Control Byte (applies to all objects)
GCTL
Auto_Ack
Pre_Arb
[Prtcl1 Prtcl0]
Transmit Message Objects and the Transmit
Process
In order to transmit a message, the XA application program needs to
first assemble the complete message and store it in the message
buffer area for that Message Object (the address of the message
buffer would have been previously programmed into the object’s
MnBLR register). The header (CAN ID and Frame Information) must
be written to the object’s MnMIDH, MnMIDL, and MnMSKH registers
as appropriate.
When the above is done, the Application is ready to transmit the
message. To initiate a transmission, the object enable bit (OBJ_EN)
must be set (except when transmitting an Auto–Acknowledge frame
in CANopen). This will allow this ready–to–transmit message to
participate in the pre–arbitration process.
If more than one message is ready to be transmitted. A so–called
pre–arbitration process will be performed to determine which
Message Object will be selected for transmission. There are two
pre–arbitration policies which the User can choose between by
setting or clearing the Pre_Arb bit in the GCTL register.
2000 Jan 25
Byte offset 0
Byte offset 1
Byte offset 2
Byte offset 3
Byte offset 4
Byte offset 5
Byte offset 6
Byte offset 7
Address: MMR base + nEh
Access: Read, write. Byte or word access.
XA 16-bit microcontroller family
32K/1024 OTP CAN transport layer controller
1 UART, 1 SPI Port, CAN 2.0B, 32 CAN ID filters, transport layer co-processor
7
–
7
–
Enables automatic acknowledge for CANopen.
0 = disable, 1 = enable.
Establishes the transmit pre–arbitration
scheme. 0 = Pre–arbitration based on CAN ID,
object number is secondary tie–breaker. 1 =
Pre–arbitration based on object number only.
Indicates CTL protocol of the system (if any).
00 = CAN
01 = DeviceNet
10 = CANopen
11 = OSEK
6
–
6
–
7
5
5
–
scs
6
4
4
–
5
45
Not used in the protocol
t = d.c.
After a Tx Message Complete, the Tx Pre–Arbitration process is
“reset”, and begins again. Also, if the winning Message Object
subsequently loses arbitration on the CAN bus, the Tx
Pre–Arbitration process gets reset and begins again.
If there is only one transmit message whose OBJ_EN bit is set, it
will be selected regardless of the pre–arbitration policy.
Pre–Arbitration Based on Priority (default mode)
This mode is selected by writing ‘0’ to the Pre_Arb bit in GCTL[2].
The filter state machine goes through all transmit Message Objects
for which the OBJ_EN bit is set. The message with the highest
priority as defined by the CAN arbitration ID field will be selected
for transmission. If more than one pending transmit message share
the same CAN identifier, then secondary priority will be based on
XA-C3 Message Object numbers, with the lowest numbered object
winning access.
The winning message will then be output onto the CAN bus where it
will compete for access with other transmitting nodes.
Pre–Arbitration Based on Object Number
As an alternative, the User may select to base pre–arbitration on
Message Object number alone. This mode is selected by writing ‘1’
to the Pre_Arb bit in GCTL[2].
The pre–arbitration state machine will go through the Message
Objects sequentially, starting with object number 0, and select the
first encountered transmit Message Object, with OBJ_EN set to ‘1’,
for transmission. In other words, the order in which the messages
objects are examined in the pre–arbitration process is by increasing
object number n, where n = 0 31. Each time pre–arbitration begins,
the enabled message with the lowest object number will be selected
Auto_Ack
Reset Value: 00xxxxxxb (unused bits are always read as ‘0’)
Address: MMR base + 27Eh
Access: Read, write, R/M/W, byte or word
Reset Value: 00h
4
3
3
count
X
3
Pre_Arb
2
2
2
X
Prtcl1
1
1
Preliminary specification
X
1
XA-C3
Prtcl0
0
0
X
0