Design goals

  • Fault tolerant
  • Reduced wire requirements
  • Multi-controller

CAN Arbitration

In CAN, we have active 0’s and passive 1’s, therefore it uses an open-drain driver. Therefore, lower device IDs have a higher priority. If someone more important wants the bus, the weaker ID stops pushing its ID.

When iterating through device IDs, once a device has a 1 which pushes high impedance, it knows it is lost and stops trying to push its ID.

Expand on CAN later on application