Aufbau einer CAN Nachricht

Der Identifier steht am Anfang

Eine CAN Nachricht oder ein Frame wird nach einer festgelegten Prozedur erstellt. Jede Nachricht beginnt mit einem Start-Bit, welches vom sogenannten Identifier gefolgt wird. Der Identifier hat im Standard CAN Modus 2.0A eine Länge von 11 Bit. Hier finden sich die Gerätekennung des Teilnehmers, für den die Nachricht bestimmt ist und die Priorisierung der Nachricht. Im Standard Protokoll folgt dann ein RTR Bit, welches kennzeichnet, ob es sich um eine Sendeaufforderung (RTR=rezessiv) oder eine Datensendung (RTR=dominant)handelt. Im erweiterten CAN Bus Protokoll ist der Identifier 29 Bit lang und in zwei Blöcke von 11 und 18 Bit aufgeteilt. Nach dem ersten Identifier folgt dann ein SRR Bit, welches signalisiert, dass es sich um einen 29 Bit Identifier (= extended) handelt. Erst nach dem zweiten 18 Bit breiten Block folgt dann das RTR Bit.

Die Länge des Datenfelds ist variabel

Nach der Arbitrierung (Identifier+RTR) folgt ein Steuerfeld, welches aus dem IDE Bit, einem reservierten Bit (r0) und dem DLC besteht. Während das IDE Bit aussagt, ob es sich um eine Nachricht im Standard- oder Extended-Format handelt, bezieht sich das DLC auf die Länge des Datenpakets. Der Wert kann zwischen 0 und 8 liegen, je nachdem, wie groß das folgende Datenfeld ist. Hier ist keine spezielle Länge vorgegeben. Das Datenfeld ist 0 bis 8 Byte groß. Gefolgt wird das Datenfeld nun von dem CRC Feld, welches aus einer 15 Bit großen Prüfsumme und einem immer rezessiv gesendeten CRC Delimiter besteht. Am Ende der Nachricht folgt dann das Bestätigungsfeld, welches aus einem Bestätigungs-Bit ACK und dem ACK Delimiter besteht und rezessiv vom Empfänger als Empfangsbestätigung gesendet wird. Das EOF Bit – End Of Frame beendet die Nachricht.

Vier verschieden Frames sind möglich

Es gibt 4 verschiedene Frame-Arten. Der Daten-Frame sendet Daten an einen Busteilnehmer. Der Remote-Frame, erkennbar durch ein rezessives RTR Bit fordert einen Teilnehmer auf, Daten zu senden. Der Error-Frame besteht aus zwei Feldern und signalisiert einen Fehler im Netzwerk. Der letzte Frame ist der Overload-Frame, der eine Zwangspause initiiert.

Comments are closed.