Hallo, ich habe eine kurze Frage zum Thema CAN-Bus: Warum ist es beim CAN Bus möglich, eine lesende Station ohne Veränderung der vorhandenen Stationen einzubinden? Das ist eine alte Klausurfrage, zwar nur 2 Punkte aber interessieren würde es mich dennoch. Würde es jemand kurz erklären? :) Danke
Vielleicht weil das CAN-Protokoll Nachrichtenbasiert arbeitet? ID208 = Bremspedal Gruß Anja
Eine lesende Station sendet nichts ... Wichtig ist das du die lesende Station auch mit dem Status "bus off" segnest ... sonst ist diese in der Lage, wenn sie was nicht erkannt hat Errorframes zu senden. Wenn Sie diese nicht sendet kann sie auch keinen "Schaden" machen (Bus blockieren oder ähnliches). Und wenn du den Teilnehmer so konfiguriert hast ist es dem vorhanden Bus egal ob da noch einer snifft oder nicht ... Es wirkt sich eigentlich nur auf die Eigenschaften des Leiters aus (höhere Kapazität zB).
Aber auch ein nur lesender TN würde im ACK-Slot sein ok geben, wenn die Nachricht von ihm korrekt empfangen wurde. Wenn also der reguläre Empfänger abstirbt bleibt auf dem Bus doch eine gültige Quittung. Ganz Rückwirkungsfrei ist das also nicht.
Bernhard Spitzer schrieb: > Aber auch ein nur lesender TN würde im ACK-Slot sein ok geben, > wenn die > Nachricht von ihm korrekt empfangen wurde. Wenn also der reguläre > Empfänger abstirbt bleibt auf dem Bus doch eine gültige Quittung. > Ganz Rückwirkungsfrei ist das also nicht. Richtig, wobei es einige CAN Implementationen gibt, wo man in einen speziellen Read-Only Modus schalten kann. Dann wird das ACK nicht gesendet und der Empfänger ist zumindest auf der logischen Ebene rückwirkungsfrei. Dann bleibt wirklich nur noch die zusätzliche Buslast etc.
Bernhard Spitzer schrieb: > Aber auch ein nur lesender TN würde im ACK-Slot sein ok geben, > wenn die > Nachricht von ihm korrekt empfangen wurde. Wenn also der reguläre > Empfänger abstirbt bleibt auf dem Bus doch eine gültige Quittung. > Ganz Rückwirkungsfrei ist das also nicht. Wird per ACK quittiert, wenn die Nachricht den Akzeptanzfilter passiert hat oder schon zuvor, d.h. es ist ausreichend, wenn die Nachricht formal i.O. ist? Oder kocht hier jeder Hersteller sein eigenes Süppchen?
Hallo, ich sehe den Hauptunterschied zu vielen anderen Busarten darin, dass zur Adressierung bei CAN immer nur die Absenderadresse bzw. die Eigenschaft des Absenders übermittelt wird, während die meisten anderen Bussysteme gezielt einen (oder mehrere) Empfänger adressieren. Dadurch kann man an einen CAN-Bus einen Knoten anschließen, der einige der vorhandenen Informationen "mithört" und auswertet (z.B. wann das Bremspedal betätigt wurde), während bei anderen Bussystemen die sendenden Knoten den neu hinzugefügten Knoten extra adressieren müssten (=Veränderung der vorhandenen Station).
>Wird per ACK quittiert, wenn die Nachricht den Akzeptanzfilter passiert >hat oder schon zuvor, d.h. es ist ausreichend, wenn die Nachricht formal >i.O. ist? Oder kocht hier jeder Hersteller sein eigenes Süppchen? Justamente versuche ich gerade meinem Simulator 29-bit Botschaften zu entlocken. Egal ob ich dem Sim eine Nachricht mit 29-Bit Ext.-ID oder 11-Bit St.-ID schicke, er quittiert immer mit dem ACK-Bit (schön sichtbar weil Sim-Trx mit 5V u. uC-Trx mit 3.3V laufen).
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.