What Is CAN Bus?
CAN Bus (Controller Area Network) is a serial communication standard that lets many electronic units communicate robustly against noise over a single bus. It's especially the backbone of automotive.
How Does It Work?
It uses two lines: CAN_H and CAN_L. Data is carried by the difference between the two lines (differential). This structure largely rejects externally coupled noise.
Prioritized Messaging
In CAN there's a message ID instead of a device address. If several devices want to talk at once, the low-ID (high-priority) message passes first; the conflict is resolved without loss (arbitration).
| Property | Value |
|---|---|
| Lines | CAN_H, CAN_L (differential) |
| Robustness | Very high |
| Addressing | Message-ID based |
The Need for a Transceiver
The microcontroller's CAN controller works at logic level; a CAN transceiver chip (e.g. the TJA1050) is needed to drive the line. A 120Ω termination resistor is placed at the ends of the line.
Where Is It Used?
In-car networks (engine, ABS, dashboard), industrial automation, medical devices and robotics.
Message Frame
A CAN message consists of an identifier (ID), a data length (DLC), 0-8 bytes of data and an error check (CRC). Receivers verify each message with the CRC; if an error is found the message is automatically resent. This built-in error handling makes CAN very reliable.
Common Mistakes
- Termination: without the 120Ω resistors, reflections corrupt the communication.
- Speed matching: all nodes must be at the same bit rate.
- Skipping the transceiver: a long line can't be driven directly by the MCU.
Frequently Asked Questions
Why is CAN preferred in automotive?+
What is CAN FD?+
Search parts related to "What Is CAN Bus?"
Find the right part by comparing price, stock and distributors.