CAN Datenkonsistenz

Gast #708704
Lesenswert?
• ▲
▼
Hallo,

ich möchte Daten per CAN verschicken. (AT90CAN128) Einzelne 
CAN-Nachrichten zu versenden und zu empfangen funktioniert schon prima. 
Jetzt überlege ich wie ich meine Daten am Besten in CAN-gerechte Stücke 
aufteile.

Jedem Datum ordne ich eine ID zu. Nun bin ich nicht sicher ob ich diese 
ID nur beim ersten CAN-Paket mitsenden soll oder bei jedem?!

Eigentlich ist beim CAN ja die korrekte Ankunftsreihenfolge ja 
gesichert, oder?

Meine erste Idee:
Um keinen allzugroßen overhead zu erzeugen würde ich also im ersten 
CAN-Paket die ersten 4 Bytes verwenden um die ID und die gesamtzahl der 
noch zum Datum gehörenden Pakete mitschicken. Dann wüsste der Empfänger 
was auf ihn zukkommt und ich könnte jedes Folgepaket komplett mit Daten 
vollpacken!
Gibts da Einwände?

Danke,

Hans
(Firma: ???) #708827
Lesenswert?
• ▲
▼
Mir fällt da spontan der Segmented-SDO-Transfer von CANopen ein.
Das ganze läuft in drei Phasen:

1. Initiierung:
   - Übergabe der Objektnummer (Ziel)
   - Anzahl der zu übertragenden Bytes

2. Übertragung der Daten
   - bis zu 7 Datenbyte pro Datensendung

3. Ende der Übertragung
   - Prüfsumme

Dazu werden zwei IDs benötigt (eine zum Senden, ein zum Bestätigen)

Vielleicht wär' das ja was für Dich ;-)

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.