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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren