I dont know whether to post this question in this group.If
this question doesn't belongs to this group please ignoe this.Can any
body know why the names CANH and CANL got its names in the Control
area network which is a serial communication protocol that was
developed by Bosch.And also how the dominant and Recessive got its
I'm just guessing here but I assume L and H in CANL, CANH stand for low and
high. eg in the differential bus a dominant signal raises the CANH line and
lowers the CANL line.
The dominant state can override the recessive state, hence the names.
Can is a differential based system. You need to maintain polarity through
the system, thus the designations, RS-485A and RS-485B.
As a note, CAN can function on only one of those signals if ground is
For noise immunity, CAN uses a differential pair of wires to transmit the
data signal. Bosch publishes the specs for the PHY layer. As for the data
encoding, it's a distributed bus that anyone can transmit on at any time.
The beginning of the packet encodes the CAN identifier of the sender
where lower numbers take precedence over higher ones. That way if two
nodes start transmitting frames at exactly the same time, the higher one
can sense that its assertion of a recessive bit doesn't match the current
bus state (dominant), flipping it immediately into receive mode and
delaying the Tx. There are no collisions on CAN, unlike Ethernet.
In my last job, I wrote a lot of firmware to move CAN data between mass
flow controllers on semiconductor tools, including debugging the physical
layer issues. Email me if you need more help.
Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here.
All logos and trade names are the property of their respective owners.