DR
AFT
DR
AFT
DRAFT
DR
D
RAFT
DRAFT
DRA
FT DRAF
D
RAFT DRAFT DRAFT DRAFT DRAFT D
DRAFT
D
RAFT DRA
FT DRAFT DRAFT DRAFT DRA
UM10316_0
© NXP B.V. 2008. All rights reserved.
User manual
Rev. 00.06 — 17 December 2008
310 of 571
NXP Semiconductors
UM10316
Chapter 21: LPC29xx CAN 0/1
The semaphore operates in the following manner:
•
SEM[1:0] = 01: Acceptance filter is in the process of updating the buffer
•
SEM[1:0] = 11: Acceptance Filter has finished updating the buffer
•
SEM[1:0] = 00: Either the CPU is in the process of reading from the buffer, or no
update since last reading from the buffer
Before writing the first data to a message object SEM[1:0] is set to 01. After having written
the last data byte into the message object the acceptance filter internal-state machine will
update the semaphore bits by setting SEM[1:0] = 11.
Before reading from a message object, the CPU should read SEM[1:0] to determine the
current state of the message object. If SEM[1:0] = 01, the internal state machine is
currently active in this message object. If SEM[1:0] = 11, the object is available for
reading.
Before the CPU begins reading from the message object it should clear SEM[1:0] = 00,
and when the CPU has finished reading it should check SEM[1:0] again. In the case of
SEM[1:0] unequal to 00, the message object has been changed during reading, so the
contents of the message object should be read out once again. If on the other hand
SEM[1:0] = 00 as expected, this means that the valid data has been successfully read by
the CPU.
Conditions to activate the FullCAN mode:
•
The EFCAN bit in the CAMODE register has to be set
•
The start-offset address of the standard frame-format explicit identifier section
CASFESA has to be greater than 0
•
The available space for the FullCAN message-object section must be large enough to
store one object for any FullCAN identifier
8.2 Standard frame-format explicit identifier section
The entries of the standard frame-format explicit identifier section must be arranged in
ascending numerical order, one per half-word and two per word (see
each CAN controller has its own address map each entry also contains the number of the
CAN controller to which it applies.
This section starts with the CASFESA start-address register and contains the identifiers
index h to index (h + i
−
1). The bit allocation of the first word is given in
Table 262. Standard frame-format explicit identifier section
Bit
Symbol
Description
31 to 29 SCC
Even index: CAN controller number
28
MDB
Even index: message disable bit. Logic 0 is message enabled and
logic 1 is message disabled
27
-
Not used
26 to 16 ID[28:18]
Even index: 11-bit CAN 2.0 B identifier
15 to 13 SCC
Odd index: CAN controller number