Die
Werte
"0"
und "1" entsprechen auf dem Bus bestimmten
Spannungsdifferenzen zwischen den beiden Leitungen. Eine "1" (recessive
state) entspricht einer Spannungsdifferenz von <0,5V. Eine "0"
(dominant state) entspricht einer Differenz von >0,9V. Etwas
genauere Angaben liefert die unten stehende Tabelle.
In einem typischen CAN-Bus liegen beide Leitungen bei "1" auf 2,5V. Im
"0"-Zustand steigt CANH auf 3,5V während CANL auf 1,5V fällt.
Warum nennt man die beiden Zustände auch "Dominant" (0) und "Recessive" (1) ? Im Ruhezustand
verbinden die Abschlusswiderstände des CAN-Busses die beiden
Leitungen mit ihren 120 Ohm, und sorgen so dafür, dass die Pegel
in etwa gleich sind. Dieser Ruhezustand entspricht der "1", und
erfordert also kein aktives Eingreifen eines CAN-Treibers. Um eine "0"
auszugeben, muss der Treiber aber die beiden Leitungen aktiv hoch
(CANH) beziehungsweise herunter (CANL) ziehen. Dieses Prinzip
ermöglicht es, dass mehrere CAN-Treiber von mehreren Geräten
(Nodes)
an den Bus angeschlossen werden können, ohne "gegeneinander" zu
treiben. (Insofern erinnert es an eine open-collector-Schaltung.) Falls
mehre Treiber gleichzeitig auf den selben Bus treiben, dann wird sich
der "1"-Zustand nur ergeben, wenn alle Treiber eine "1" ausgeben
wollen (Recessive). Sobald aber auch nur ein einziger Treiber eine "0"
ausgibt,
dann liegt der Bus sofort auf "0". Dieser Zustand wird sich also immer
durchsetzen, er ist Dominant. |
|