AP29000
Connecting C166 and C500 Microcontroller to CAN
The Infineon CAN Devices C167CR, C515C and SAE 81C90/91
Application Note
30
V 1.0, 2004-02
4.2.4
Initialization of the CAN Controller
To initialize the CAN controller, two bits in the control register (INIT and CCE) have to
be set first. Then the register concerning the bit timing and the global mask registers
must be configured. Afterwards each message object is to be initialized or is to be
declared as not valid if it is not needed. The procedure is finished when bits INIT and
CCE in the control register are reset. Now the CAN controller synchronizes to the data
transfer on the CAN bus by waiting for 11 consecutive recessive bits. Finally it can
participate in the CAN bus communication. Please also read section 5.4.1 for more
information about the initialization of this device.
Further information about the CAN module can be found in section 5 or in the Infineon
literature "Description of the On-Chip CAN-Module" and the manuals of the C167CR
and the C515C.
4.3
The Stand-Alone Full-CAN Controller SAE 81C90/91
4.3.1
Important Features of the SAE 81C90/91
The CAN controllers SAE 81C90 (P-LCC-44-package, with two 8-bit I/O-Ports, and
SAE 81C91 (P-LCC-28-package; without I/O-Ports) can be operated with up to
20 MHz. They support the CAN spezification V2.0A (B passive), i.e. the controllers can
handle messages with the 11-bit standard identifier. Frames with the 29-bit extended
identifier are not stored, but tolerated. Via a flexible, programmable interface the
connection to different implementations of the physical layer (ISO/OSI layer 1) is
possible. The connection to the host controller can be set up either in parallel via a
multiplexed 8-bit address-/ data bus compatible to Infineon 8- and 16-bit
microcontrollers or via a fast synchronous serial interface (up to 5 MBit/s). With the 8
bit wide registers all functions of the device are controlled from the host CPU. There
are software drivers available for the SAE 81C90/91 from different CAN tool suppliers.
The SAE 81C90/91 can handle 16 CAN message objects. Each of these comprises
eight data bytes and two descriptor bytes containing important information about the
configuration of the relevant object. Message objects 0-7 are additionally equipped
with two time-stamp bytes, from which the currency of the data in the data bytes can
be inferred. For message object 0, a so called "monitor mode" is available with which
this message object can be configured to receive all messages that are not covered by
other memory locations. This device, too, thus offers basic CAN functionality.