0% found this document useful (0 votes)
105 views19 pages

Can Bus (Controller Area Network)

CAN (Controller Area Network) is a serial communication bus system used to connect microcontrollers in automobiles and industrial machines. It uses a message-based protocol where messages are prioritized by identifier rather than address. Error detection occurs at both the message level through CRC checksums and frame checks and at the bit level through transmission monitoring and bit stuffing. Common CAN controller implementations include Basic CAN, Full CAN, FIFO, and Enhanced Full CAN, and over 20 microcontroller manufacturers include onboard CAN interfaces in their products.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
105 views19 pages

Can Bus (Controller Area Network)

CAN (Controller Area Network) is a serial communication bus system used to connect microcontrollers in automobiles and industrial machines. It uses a message-based protocol where messages are prioritized by identifier rather than address. Error detection occurs at both the message level through CRC checksums and frame checks and at the bit level through transmission monitoring and bit stuffing. Common CAN controller implementations include Basic CAN, Full CAN, FIFO, and Enhanced Full CAN, and over 20 microcontroller manufacturers include onboard CAN interfaces in their products.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 19

CAN BUS

(Controller Area Network)


Contents
 Overview
 Data Information
 Frame Format
 Protocol
 Error Detection
 Implementations
 Basic CAN
 Full CAN
 FIFO
 Enhanced Full CAN
 Manufacturers
 Diagrams
Overview
 CAN (Controller Area Network) is a serial bus
system used to communicate between
several embedded 8-bit and 16-bit
microcontrollers.
 It was originally designed for use in the
automotive industry but is used today in many
other systems (e.g. home appliances and
industrial machines).
Overview (con’t)
 Highest Baud Rate is 1Mbit.
 CAN uses a message oriented transmission
protocol.
 There are no defined addresses, just defined
messages.
Data Information – Frame Format

 SOF – Start of Frame


 Identifier – Tells the content of message and priority
 RTR – Remote Transmission Request
 IDE – Identifier extension (distinguishes between CAN standard,11 bit
identifier, and CAN extended, 29 bit identifier.)
 DLC – Data Length Code
 Data – holds up to 8 bytes of data
 CRC – “Cyclic Redundant Check” sum
 ACK – Acknowledge
 EOF – End of Frame
 IFS – Intermission Frame Space. Minimum number of bits separating
consecutive messages.
Data Information - Protocol
 Messages are
distinguished by
message identifiers.
 The identifier is unique
to the network and
defines the content &
priority of the message.
Data Information – Protocol (con’t)
 When several messages
access the bus at the same
time, the one with the higher
priority “wins”.
 The identifier with the lowest
binary number has the
highest priority.
 The priority are specified
during system design and
cannot be changed
dynamically.
Data Information – Protocol (con’t)

 Access conflicts on the


bus are resolved by a
“wired and” mechanism,
where the dominate state
overwrites the recessive
state.
 All “losers” automatically
become receivers and
they won’t try to send
another message until the
bus becomes available
again.
Data Information – Error detection
 If one or more errors are detected, the transmission
is aborted. This prevents all other stations or nodes
from accepting the message.
 Re-transmission is automatic. If errors continue, then
the station or node may switch itself off to prevent the
bus from being tied up.
 Error detection is done on two levels:
 Message level
 Bit level
Data Information – Error detection
(con’t)
 Message Level
 CRC = Cyclic Redundant Check sum
 Frame Check = compares message to fixed format and
frame size
 ACK errors = if transmitter does not receive an ACK
signal from the receivers
 Bit level
 Monitoring = The transmitter monitors the bus signal as
it sends the message and compares the bit sent to the
bit received.
 Bit Stuffing = After five consecutive equal bits, the
transmitter inserts a stuff bit with a compliment value
into the bit stream. The receivers remove this stuff bit.
Implementations
 Basic CAN
 Limited number of
receive buffers and
filters
 Can get bogged down
quickly with multiple
consecutive
messages.
Implementation (con’t)
 Full CAN
 Has several message
objects (usually 15)
 Can loose data if
message objects are
setup for multiple filters
 Can still get bogged
down if too many
messages are sent
consecutively
Implementation (con’t)
 FIFO
 “First In First Out”
receive buffer
 Fixes problem with
multiple consecutive
messages
 Cannot allow a high
priority message to
move to front. It has to
wait its turn
Implementation (con’t)
 Enhanced Full Can
 Dedicated FIFO for
each individual
message object
 Very complicated to
use
 Less common
Manufacturers
 Over 20 different chip manufacturers produce
microcontrollers with on-chip CAN interfaces.
 Some more notable ones are:
 Cygnal
 Intel
 Motorola
 NEC
 Phillips
 Toshiba
Cygnal C8051F040/042 Block Diagram
CAN Controller Diagram
Useful Links
 Manufacturer and Product List
 http://www.can-cia.org/products/can/chips/
 CAN Information
 http://www.canbus.us/
 http://www.can-cia.org/can/
Summary
 CAN (Controller Area Network) is a serial bus system used to
communicate between several embedded 8-bit and 16-bit
microcontrollers
 Data Information
 Frame Format
 Protocol – message oriented
 Error Detection
 Message level (CRC, frame check, ACK errors)
 Bit level (monitoring, bit stuffing)
 Implementations
 Basic CAN
 Full CAN
 FIFO
 Enhanced Full CAN
 Over 20 different chip manufacturers produce microcontrollers with
on-chip CAN interfaces including Cygnal, Intel, and Motorala.

You might also like