Ich lese Datenblätter zum LIN-Bus, aber anscheinend wird die gleiche Terminologie für CAN verwendet.
Wofür stehen "rezessiv" und "dominant", zB http://hw-server.com/products/rs_optika/prevodniky_optika.html ?
Wie beziehen sich diese Begriffe auf „niedrig“ und „hoch“ oder 0 und 1?
Dominant ist 0. Rezessiv ist 1. Dominant gilt für 0, denn wenn zwei Arbitrierungs-IDs gleichzeitig übertragen werden und die ersten 4 Bits gleich sind und das fünfte für eines von ihnen 0 und für das andere 1 ist, ist die ID mit die 0 wird am Ende übertragen. Die Übertragung der Nachricht mit der größeren Arbitrierungs-ID wird erneut versucht, nachdem die andere Nachricht fertig ist.
Zusätzlich zu der an anderer Stelle gegebenen vollkommen korrekten Antwort kann es auch nützlich sein, die Bedeutungen der Ausdrücke dominant und rezessiv auf niedrigerer Ebene zu berücksichtigen . Sowohl bei CAN als auch bei LIN „schwebt“ der Bus auf der physikalischen Schicht in einen bestimmten Zustand, wenn keine Knoten kommunizieren. Dies ist der rezessive Zustand. Jeder Knoten, der ein dominantes Bit treibt, überschreibt diesen Zustand (daher das Wort " dominant ").
Dies wird innerhalb des Protokolls verwendet, um eine zerstörungsfreie Arbitrierung zu ermöglichen, bei der der Knoten mit der niedrigsten ID "gewinnt". Dies liegt an der Entscheidung, ein logisches Low durch ein dominantes Bit zu kennzeichnen.
(Die Standards hätten auch andersherum geschrieben werden können. Es gibt nichts, was verlangt , dass ein dominantes Bit in jedem anderen Kontext als Null interpretiert wird.)
Lundin