Hallo! ist ein Standard-Frame mit 1 Byte Daten die kleinste Nachricht oder geht auch 0 Byte? Oder gar ein ganz anderer Frame? Danke
0 Byte Datenlänge ist ok. Beim Frame kannste sonst nur noch zwischen 11 und 29 bit ID wählen, falls dein System nicht vorgegeben ist.
in welchem Fall schickt man eigentlich 0 Byte? ist das dann der Remote ?
ne, wird auch für "life guarding" benutzt, jeder Teilnehmer muss sich innerhalb eines bestimmten Zeitrasters melden, auch wenn es aktuell nichts sinnvolles mitzuteilen gibt. Und ein Frame mit 0Byte Daten ist eben kürzer als einer mit Daten. Insofern macht ein Frame ohne Daten Sinn. Eingesetzt habe ich es aber noch nicht.
Im CAN-Frame-Aufbau gibt es ein sogenanntes Remote- oder Request-Bit. Damit schickt man sozusagen eine Anfrage, dass ein bestimmter Knoten einem Daten schicken soll. In solch einer Nachricht müssen natürlich keine weiteren Daten enthalten sein und deshalb kann man auch eine CAN-Nachricht mit 0Byte Daten schicken. Wird verwendet um Sensoren abzufragen. Gruß Fred
Wenn man die ID-Bits nicht alle braucht, kann man auch die restlichen für Daten benutzen. Man kann also durchaus 11 Byte pro Nachricht senden. Peter
Och nö, nicht sowas. Klar geht das prinzipiell, aber warum sollte man sich sowas antun? Ich glaube kaum, dass es Applikationen gibt, bei denen das nötig ist.
Warum? Die Nachrichten-ID (keine Adresse!) trägt ja schon Informationen. Bei CANopen ist eine Nachricht mit der ID 0x00 z.B. ein SYNC-Frame. Von wem das kommt und wer der Empfänger ist, ist total uninteressant. mfg, Stefan.
crazy horse wrote: > Klar geht das prinzipiell, aber warum sollte man sich sowas antun? Ich > glaube kaum, dass es Applikationen gibt, bei denen das nötig ist. Weil das von den CAN-Entwicklern so vorgesehen ist. Deshalb gibts ja die Maskierungsregister, um ID-Bits vor der Erkennung zu maskieren. Es ist durchaus üblich, daß Bits im ID eine bestimmte Bedeutung haben. Ich wollte auch nur darauf hinweisen, daß eine CAN-Nachricht mit 0 Bytes im Datenfeld schon 3 Datenbytes beinhalten kann. Das muß also keinesfalls eine Null-Nachricht sein. Peter
OK, ich nehme mal eine 0 Byte Nachricht als kleinste "normale" Nachricht an. Wie viele Bits sind das dann? Nach meiner Rechnung im optimalen Fall: Kein Bitstuffing mit 3 IFS Bits 8*0+44+3 = 47Bit 47 Bit ist die kürzeste Nachricht. Stimmts?
..da möchte ich mal anknüpfen (bei 47 stimme ich zu) und nach eurer Meinung fragen, was die kleinstmögliche abgebrochene CAN Nachricht ist. Klingt vielleicht komisch, was ich meine ist: Wenn die Nachricht abgebrochen wird, durch nen Fehlerframe, dann werden mindestens 6 Bit Errorflag, plus 8 Bit Errordelimiter gesendet, das ist klar. Aber ab welchem Zeitpunkt kann ein Fehler erkannt werden, bzw, gilt, wenn ein Teilnehmer ein SOF Bit schickt, und das auf dem Bus nicht abtastet, dass ein Bitfehler vorliegt, oder gibts da das für SOF irgendne Sonderreglung?
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.