Controller Area Network (CAN)
CAN (Controller Area Network) is a serial bus system, which was originally developed for automotive applications in the early 1980s. The CAN protocol is internationally standardized in ISO 11898-1 and comprises the data link layer of the 7-layer ISO/OSI reference model. CAN, which is by now available from more than 50 semiconductor manufacturers in hardware, provides two communication services: the sending of a message (data frame transmission) and the requesting of a message (remote transmission request, RTR). All other services such as error signaling, automatic re-transmission of erroneous frames are user-transparent, which means the CAN controller chip automatically performs these services.
The CAN data link layer provides:
- Multi-master capability: Any CAN node may send a message, if the bus is idle.
- Broadcast communication: All messages transmitted are received in all nodes. All receiving nodes decide if they like to accept this message. This guarantees data consistency as all nodes in the system use the same information.
- Sophisticated error detecting mechanisms and re-transmission of faulty messages: This guarantees network-wide data consistency.
- Non-destructive bus arbitration: If two or more CAN nodes request simultaneously a message transmission, the protocol guarantees that the message with the highest priority gets bus access immediately.










