Forum: Mikrocontroller und Digitale Elektronik CAN-Frame zu kurz?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Tobias (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bin gerade dabei mit dem CAN-Bus etwas rumbasteln und bin gerade der 
Meinung, dass der CAN-Frame zu kurz ist (siehe Bild). Ich habe mit einem 
Logic-Analyzer 4 Frames aufgezeichnet und mit Excel analysiert (weil 
irgendwas mit der Baudrate noch nicht stimmt, deswegen geht's nicht 
automatisch).

Farben sind unten im Bild erklärt. Beim Identifier habe ich im Code nur 
ein Byte geändert und erst später gesehen, dass an einer anderen Stelle 
noch die letzten 3 Bit gesetzt werden.

Jetzt mein Problem: Ich hätte 15 CRC-Bits erwartet, was aber nicht 
hinkommt. (Nach Ende des Screenshots ist der Pegel die ganze Zeit high). 
Hat jemand eine Erklärung dafür? Es gibt nur einen Busteilnehmer, der 
einfach nur sendet.

Vielen Dank und viele Grüße
Tobias

von Clemens S. (zoggl)


Bewertung
0 lesenswert
nicht lesenswert
Der sender erwarrtet dass ein 2. das ack auf 0 zieht.
Wenn das nicht passiert bricht er die Übertragungen ab.

Sg

von Clemens S. (zoggl)


Bewertung
0 lesenswert
nicht lesenswert
Vergiss meinen letzten beitrag.

Du liest das frame ende falsch.
2 mal 1 ack ubd delim (kein ok von 2. teilnehmer)
1 mal 1 crc delim
7 mal 1 als ende

Deine crc darf also mit 5 mal 1 enden (siehe stuffingregel für crc u 
delimiter u ack) und du siehst am ende nur noch high

Berechne mal die crc die da stehen musd und vergleiche sie mit deiner 
excel.

Dann siehst du dass du das graue feld falsch plaziert hast

von Tobias (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

danke für deinen Hinweis. Du hast recht. Ich habs nochmal nachvollzogen 
(siehe Excel im Anhang). Das erste Beispiel kommt hin, beim zweiten 
Beispiel stimmt ein Bit nicht, aber das würde ich mal auf einen 
Rechenfehler zurückführen. Ist mir aber auch nicht so wichtig, ich 
wollte nur wissen, ob die Botschaft an sich ok ist.

Also Danke :)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.