CAN
What is CAN?
CAN (Controller Area Network) is a serial communication standard that is widely used in the automotive industry. A CAN bus system is a network that enables interconnected nodes to communicate with each other through CAN by broadcasting data to a central bus.
There are several advantages to using CAN:
- Simplicity: Nodes are directly connected to the bus through a single two-wire interface, reducing wiring complexity, weight, and cost.
- Speed: Supports up to 1Mbps baud rate.
- Reliability: Robust against electrical disturbances and electromagnetic interference; features such as arbitration, CRC, and ACK fields further ensure signal integrity.
- Scalability: The number of nodes connected on a CAN bus is easily scalable.
CAN Frames
Data is sent over the CAN bus through CAN frames (or CAN messages):
- SOF: Start of Frame bit, marks the start of the CAN frame.
- ID: CAN frame identifier, lower values have higher priority. The CAN ID is 11 bits for Standard CAN and 29 bits for extended CAN.
- RTR: Remote Transmission Request bit, indicates whether information is required from another node.
- Control: Contains the IDE (Identifier Extension) bit which is dominant 0 for standard CAN. Also contains the DLC (Data Length Code), 4 bits that specify the length of the data section.
- Data: 0 - 8 bytes of CAN data.
- CRC: Cyclic Redundancy Check, a checksum of the preceding data bits to ensure data integrity.
- ACK: Acknowledgement bit, indicates if the node has properly acknowledged the data (overwritten with dominant 0).
- EOF: End of Frame, marks the end of the CAN frame.
Sub-Pages
Further Reading
- TI - Introduction to the Controller Area Network (CAN)
- All About Circuits - Introduction to CAN (Controller Area Network)
- CSS Electronics - CAN Bus Explained - A Simple Intro