Page 216
DS007-0.4-NOV02
AdvancedInformation
C8051F060/1/2/3
NORMAION
18.2.3. Message Handler Registers
18.2.
CAN Registers
CAN registers are classified as follows:
1. CAN Controller Protocol Registers: CAN control, interrupt, error control, bus status, test
modes.
2. Message Object Interface Registers: Used to configure 32 Message Objects, send and
receive data to and from Message Objects. The C8051 MCU accesses the CAN message
RAM via the Message Object Interface Registers. Upon writing a message object number
to an IF1 or IF2 Command Request Register, the contents of the associated Interface
Registers (IF1 or IF2) will be transferred to or from the message object in CAN RAM.
3. Message Handler Registers: These read only registers are used to provide information to
the CIP-51 MCU about the message objects (MSGVLD flags, Transmission Request
Pending, New Data Flags) and Interrupts Pending (which Message Objects have caused
an interrupt or status interrupt condition).
4. C8051 MCU Special Function Registers (SFR): Five registers located in the C8051 MCU
memory map that allow direct access to certain CAN Controller Protocol Registers, and
Indexed indirect access to all CAN registers.
18.2.1. CAN Controller Protocol Registers
The CAN Control Protocol Registers are used to configure the CAN controller, process interrupts, monitor bus status,
and place the controller in test modes. The CAN controller protocol registers are accessible using C8051 MCU SFR’s
by an indexed method, and some can be accessed directly by addressing the SFR’s in the C8051 SFR map for conve-
nience.
The registers are: CAN Control Register (CAN0CN), CAN Status Register (CAN0STA), CAN Test Register
(CAN0TST), Error Counter Register, Bit Timing Register, and the Baud Rate Prescaler (BRP) Extension Register.
CAN0STA, CAN0CN, and CAN0TST can be accessed via C8051 MCU SFR’s. All others are accessed indirectly
using the CAN address indexed method via CAN0ADR, CAN0DATH, and CAN0DATL.
Please refer to the Bosch CAN User’s Guide for information on the function and use of the CAN Control Pro-
tocol Registers.
18.2.2. Message Object Interface Registers
There are two sets of Message Object Interface Registers used to configure the 32 Message Objects that transmit and
receive data to and from the CAN bus. Message objects can be configured for transmit or receive, and are assigned
arbitration message identifiers for acceptance filtering by all CAN nodes.
Message Objects are stored in Message RAM, and are accessed and configured using the Message Object Interface
Registers. These registers are accessed via the C8051’s CAN0ADR and CAN0DAT registers using the indirect
indexed address method.
Please refer to the Bosch CAN User’s Guide for information on the function and use of the Message Object
Interface Registers.
The Message Handler Registers are
read only
registers. Their flags can be read via the indexed access method with
CAN0ADR, CAN0DATH, and CAN0DATL. The message handler registers provide interrupt, error, transmit/receive
requests, and new data information.