Atmel Xplained Pro Evaluation Kit ATSAM4E-XPRO ATSAM4E-XPRO Data Sheet

Product codes
ATSAM4E-XPRO
Page of 1506
657
SAM4E [DATASHEET]
Atmel-11157D-ATARM-SAM4E16-SAM4E8-Datasheet_12-Jun-14
33.6.3 Interrupt 
The CAN interrupt line is connected on one of the internal sources of the Advanced Interrupt Controller. Using the
CAN interrupt requires the interrupt controller to be programmed first. Note that it is not recommended to use the
CAN interrupt line in edge-sensitive mode.
33.7
CAN Controller Features
33.7.1 CAN Protocol Overview
The Controller Area Network (CAN) is a multi-master serial communication protocol that efficiently supports real-
time control with a very high level of security with bit rates up to 1 Mbit/s.
The CAN protocol supports four different frame types:
Data frames: They carry data from a transmitter node to the receiver nodes. The overall maximum data 
frame length is 108 bits for a standard frame and 128 bits for an extended frame.
Remote frames: A destination node can request data from the source by sending a remote frame with an 
identifier that matches the identifier of the required data frame. The appropriate data source node then 
sends a data frame as a response to this node request.
Error frames: An error frame is generated by any node that detects a bus error. 
Overload frames: They provide an extra delay between the preceding and the successive data frames or 
remote frames.
The Atmel CAN controller provides the CPU with full functionality of the CAN protocol V2.0 Part A and V2.0 Part B.
It minimizes the CPU load in communication overhead. The Data Link Layer and part of the physical layer are
automatically handled by the CAN controller itself.
The CPU reads or writes data or messages via the CAN controller mailboxes. An identifier is assigned to each
mailbox. The CAN controller encapsulates or decodes data messages to build or to decode bus data frames.
Remote frames, error frames and overload frames are automatically handled by the CAN controller under
supervision of the software application.
33.7.2 Mailbox Organization
The CAN module has 8 buffers, also called channels or mailboxes. An identifier that corresponds to the CAN
identifier is defined for each active mailbox. Message identifiers can match the standard frame identifier or the
extended frame identifier. This identifier is defined for the first time during the CAN initialization, but can be
dynamically reconfigured later so that the mailbox can handle a new message family. Several mailboxes can be
configured with the same ID.
Each mailbox can be configured in receive or in transmit mode independently. The mailbox object type is defined
in the MOT field of the CAN_MMRx. 
33.7.2.1   Message Acceptance Procedure
If the MIDE field in the CAN_MIDx register is set, the mailbox can handle the extended format identifier; otherwise,
the mailbox handles the standard format identifier. Once a new message is received, its ID is masked with the
CAN_MAMx value and compared with the CAN_MIDx value. If accepted, the message ID is copied to the
CAN_MIDx register.
Table 33-3.
Peripheral IDs
Instance
ID
CAN0
37
CAN1
38