User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 560
UG585 (v1.11) September 27, 2016
Chapter 18: CAN Controller
18.2 Functional Description
Each controller is independently configured and controlled. There are two CAN controllers (CANx;
where x = 0 or 1). The register name preface for the CAN registers is 'can' (e.g., can.MSR register).
18.2.1 Controller Modes
The CAN controller supports the following modes of operation:
•Configuration
•Normal
Sleep
•Loop Back
•Snoop mode
Configuration Mode
The CAN controller enters the Configuration mode when any of the following actions are performed,
regardless of the operation mode:
•Writing a 0 to the CEN bit in the SRR register.
•Writing a 1 to the SRST bit in the SRR register. The core enters the Configuration mode
immediately following the software reset.
•Driving a 0 on the reset input. The core continues to be in reset as long as reset is 0. The core
enters Configuration mode after reset is negated to 1.
Normal Mode
Normal mode transmits and receives messages on the Tx and Rx I/O signals as
def
ined by the Bosch
and IEEE
specif
ications.
Sleep Mode
Sleep mode can be used to save a small amount of power during idle times. When in sleep mode, the
controller can transition to normal mode or
conf
iguration mode. In sleep mode:
When another node transmits a message, the controller receives the message and exits sleep
mode.
If there is a new Tx request then the hardware switches the controller to normal mode and the
controller
ser
vices the request(s).
An interrupt can be generated when the controller enters sleep mode.
An interrupt can be generated when the controller wakes up.
Sleep mode is exited by the hardware when there is CAN bus activity or a request in either TxFIFO or