CAN-Bus Flashcards
1
Q
Was ist ein CAN-Bus?
A
- gehört zu Feldbussen
- Arbeitet mit Multi-Master Prinzip, also gleichberechtigte Teilnehmer
- verwendet CSMA/CR für Buszuteilung
- Daten sind mit NRZ codiert
- verwendet CRC-Prüfsumme als Fehlererkennung
- Bus im Idle-Zustand auf rezessives Bit gesetzt (1)
2
Q
Wie ist die maximale Leitungslänge von CAN?
A
- ist abhängig von der Ausbreitungsgeschwindigkeit
- bei 1 Mbit/s 40m
- bei 500 kbit/s 100m
- bei 125 kbit/s 500m
- je länger die Leitung ist, desto mehr Zeit braucht das Signal von einem Ende zum anderen
- es reicht nicht, von einem Ende zum anderen zu kommen, das Signal muss lange genug anliegen, damit der Empfänger auch auf das Signal reagieren kann
3
Q
Was ist der Babbling Idiot?
A
- ein Bus-Teilnehmer mit hoher Priorisierung der defekt ist und deshalb dauerhaft sendet und aufgrund seiner hohen Priorität alle anderen Sender unterdrückt
4
Q
Welche Frames hat CAN?
A
- Data-Frame
- Remote-Frame
- Error-Frame
- Overload-Frame
5
Q
Was ist der Data-Frame?
A
- Aufgabe: Transport von Daten
Besteht aus:
1. Start of Frame = 1 dominantes Bit
2. Arbitrierungsfeld = Identifier, Länge unterschiedlich (11 oder 29+2) + Remote Transmission Request
3. Kontrollfeld (CTRL) = 6 Bit, Identifier Extension, reserved, Data Length Code -> Länge des Datenfeldes
4. CRC = 15 Bit, Generatorpolynom, gefolgt von rezessivem Delimitier-Bit
5. Bestätigungsfeld (ACK) = 2 Bit, bestehend aus rezessivem Ack-Delimiter
6. End of Frame = 7 Bit rezessiv
7. Intermission = 3 Bit, die aufeinanderfolgende Nachrichten trennt
6
Q
Was ist der Remote-Frame?
A
- Aufgabe: dient zur Anforderung von Data-Frames von einem anderen Teilnehmer
- hat das RTR-Bit (Remote Transmission Request) gesetzt
- Data Feld entspricht der Länge der Daten, die gesendet werden sollen -> darf nicht 0 sein
7
Q
Was ist der Error-Frame?
A
- Aufgabe: signalisiert allen Teilnehmern, einen erkannten Fehler in der Übertragung
- besteht aus Error Flag und Error Delimiter
- zwei Arten von Flags:
1. Active Error Flag -> von einem Knoten der den Fehler entdeckt hat und Fehler Status error active hat
2. Passive Error Flag -> von einem Knoten der den Fehler entdeckt hat und Fehler Status error passive hat
8
Q
Was ist der Overload-Frame?
A
- besteht aus Overload Flag und Overload Delimiter
- zwei Arten von Ursachen für Overloads
1. voller Empfangspuffer beim Empfänger
2. Erkennung eines dominanten Bits auf dem Bus währen einer Übertragungspause des eigenen Sendevorgangs
9
Q
Warum werden von Frames für Kontroll-Aufgaben oft 6 gleiche Bit in Folge verwendet?
A
- weil CAN nach 5 gleichen Bit ein Stuffing Bit einfügt
- dadurch kann eine Folge länger 5 als Steuer-Folge eingesetzt werden, da diese sonst nicht vorkommen kann
10
Q
Wie funktioniert der ACK-Slot der Data-Frames?
A
- wird gebraucht um den Erhalt der Nachricht zu bestätigen
- am Anfang rezessiv
- wird bei erfolgreichem Erhalt auf dominant gesetzt (erhalten und keine Fehler festgestellt)
- im Falle einer negativen Bestätigung (immer noch rezessiv) muss der fehlererkennende Knoten eine Error-Flag senden, damit der Sender den Fehler bemerkt