Forum: Mikrocontroller und Digitale Elektronik max CANspeed Erreichbarkeit


von Dr Snuggles (Gast)


Lesenswert?

Hi, ich habe gelesen, dass CAN bis zu 1MBaud übertragen kann, also 10e6 
Zeichen pro Sekunde.

Ein Baud = 1 Zeichen = 8bit?

Ich will zwischen zwei CAN-Teilnehmern mit 10kHz Daten austauschen. Geht 
das bei 1MBaud Geschwindigkeit? Die Paketgröße soll 15x32bit sein.

von holger (Gast)


Lesenswert?

>Ein Baud = 1 Zeichen = 8bit?

Nein, 1Bit.

von Gerd E. (robberknight)


Lesenswert?

holger schrieb:
> Nein, 1Bit.

Und zwar ein Bit eines CAN-Frames. Das ist was ganz anderes als ein Bit 
Nutzdaten.

Siehe hier für einen ersten Überblick: 
https://de.wikipedia.org/wiki/Controller_Area_Network

von Harald A. (embedded)


Lesenswert?

Wenn ich die Zahlen noch richtig im Kopf habe, ist eine Nachricht 
zwischen 64 Bits (0Datenbytes) und 131 Bits (8 Datenbytes) lang. Das 
galt IIRC für 29bit Nachrichten. Also ist selbst der beste 
Brutto/Netto-Datendurchsatz irgendwo 50%. Wo noch hinzukommt, dass man 
80..90% Buslast der Arbitrierung zuliebe unterlassen sollte.

Ganz nebenbei: 1MBit ist was für den Labortisch, weniger praxisnah zu 
gebrauchen (*1). Welche Strecke willst du denn überwinden?

Konkret zur Frage: wenn man 1..2 Byte in die 11bit Nachricht packt 
könnte es mit 10kHz gerade so klappen. EDIT: Sehe gerade, 15x32bit gehen 
sicher nicht. 8 Nachrichten ergeben >1ms, also kleiner 1kHz.

(*1] Gibt ganz bestimmt Leute, die das besser wissen und können.

von Martin (Gast)


Lesenswert?

Also mit 500kbd sind ca. 12kb/s flashspeed bei maximaler buslast 
erreichbar, Erfahrung aus dem Automotive Bereich.

von Thomas F. (igel)


Lesenswert?

Dr Snuggles schrieb:
> mit 10kHz Daten austauschen. Geht
> das bei 1MBaud Geschwindigkeit? Die Paketgröße soll 15x32bit sein.

Mit CAN-FD passen 512 Datenbits in eine Botschaft. Dein Paket würde in 
eine CAN-FD-Botschaft passen. Mit den 10kHz wird es trotzdem nichts 
werden.

von Bob (Gast)


Lesenswert?

Martin schrieb:
> Also mit 500kbd sind ca. 12kb/s flashspeed bei maximaler buslast
> erreichbar, Erfahrung aus dem Automotive Bereich.

Mal davon ab, dass diese Antwort nicht zum Problem passt, das hängt 
nicht alleine vom Bus ab.
Mit einem AVR komme ich beim Flashen per CAN und 500kBit/s so auf 
12kB/s, mit einem ATSAMC21 komme ich mit exakt dem gleichen Protokoll 
aber so auf 20kB/s.
Zwischendurch muss der Controller ja auch mal die Pages weg schreiben.

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
Noch kein Account? Hier anmelden.