Startseite · Forum · CAN Module · Shops · Katalog · Pressearchiv · Downloads · Videos · WebLinksDonnerstag, 02. April 2020
Thema ansehen
 Das CAN digital Bahn Projekt > M(ärklin)-CAN Module
 CC-Schnitte
Nächstes Thema

 
Autor Frage zum Can Format   1 # 5 top
hlag
Amateur


User Avatar



Beiträge: 16

Eingetreten: 28.01.20
Status: Offline
Eingetragen am 09.03.2020 01:08  

Hallo in die Runde,

laut Märklin https://www.maerklin.de/fileadmin/m..._1-0.pdf hat ein Can-Befehl die folgende Struktur

4 Bit Prio
8 Bit Kommando
1 Bit Res-ponse-Status (sorry für die Schreibweise, das korrekte Wort wird vom Board als Spam gewertet...??)
16 Bit Kollisionsauflösung
4 Bit Anzahl folgender Datenbytes (immer 8)
8 Byte Datenbytes (nach Märklin unterteilt in 4 Byte Adresse und 4 Byte Wert)


Jetzt lese ich die CC-Schnitte aus und bekomme schön 13 Bytes, wie es scheint, die Datenbytes schön in die letzten acht Stellen sortiert.

Aber die ersten Bits sind doch ein total krummer Wert???

4 + 8 + 1 + 16 + 4 sind 33 Bit.
Für fünf vollständige Bytes fehlen mir 7 Bit (7 Bit * 0,3l * 4,8% entspricht etwa 100g Alkohol, das ist schon relevant ;-) )

Spass beiseite: Wo kommen diese Bits her? Irgendwoher müssen sie ja kommen, wenn die restlichen Bytes vollständig sind.

LG Klaus


TS12, DX7, Tyros, VL70-m, Polysix, i3, Microwave, blofeld, TG77, Versi II, Rockkordeon, Loverock, Telecaster, GPC-16E, Grand Royale, APX500 BL und noch so ein paar
 
Autor RE: Frage zum Can Format   2 # 5 top
Wilde 13
Spezialist


User Avatar



Beiträge: 292

Ort: da, wo die Seehunde bellen
Eingetreten: 22.11.10
Status: Offline
Eingetragen am 09.03.2020 10:43  

Hallo Klaus,

zu Deiner Info, seit dem 07.02.2012 gibt es die (meines Wissens nach noch aktuelle) Version 2.0 vom Märklin-Protokoll:

http://medienpdb.maerklin.de/digita...-2_0.pdf

Dort steht, am Ende von Kapitel 1.2 (S. 7) im letzten Satz, wo die Bits herkommen.


LG
Wilde 13

 
Autor RE: Frage zum Can Format   3 # 5 top
hlag
Amateur


User Avatar


Threadstarter

Beiträge: 16

Eingetreten: 28.01.20
Status: Offline
Eingetragen am 09.03.2020 22:12  

Hi Wilde13,
Danke für den Link, aber der Satz hilft nicht. UDP ist für Ethernet, ich zapfe die Serielle Schnittstelle an. Die cc-Schnitte simuliert irgendwie einen COM-Port.

Trotzdem ist der Link für die Befehle recht hilfreich.

Zweite Frage wäre, ob in dem Datenfluss aus dem COM-Port die Stuffing-Bits noch enthalten sind oder ob der ftdi-Treiber diese schon entfernt...

Lg klaus


TS12, DX7, Tyros, VL70-m, Polysix, i3, Microwave, blofeld, TG77, Versi II, Rockkordeon, Loverock, Telecaster, GPC-16E, Grand Royale, APX500 BL und noch so ein paar
 
Autor RE: Frage zum Can Format   4 # 5 top
ST-Oldie
Spezialist




Beiträge: 53

Eingetreten: 24.04.13
Status: Offline
Eingetragen am 15.03.2020 14:12  

Hallo Klaus,

Quote
hlag schrieb:... aber der Satz hilft nicht. UDP ist für Ethernet, ich zapfe die Serielle Schnittstelle an. Die cc-Schnitte simuliert irgendwie einen COM-Port.



Ganz im Gegenteil hilft der Link schon weiter.

Auf dem CAN Bus hast du das folgende Format:

32 Bit CAN Id
8 Bit DLC (Anzahl der verwendeten Datenbytes)
8 Byte CAN Daten

Das sind dann in der Summe 13 Bytes.

Über die CC-Schnitte empfängst du genau diese 13 Byte.

Die Märklin CAN Doku beschreibt genau den Aufbau dieser 13 Bytes, die dann auch per UDP versendet werden. Das, was Märklin als Meldungskennung beschreibt, ist die CAN Id mit 32 Bytes. Gefolgt von DLC und den 8 Datenbytes.

Wenn du etwas C kannst, kanst du auch aus meiner Software mrsystem die entsprechenden Teile als Beispiel entnehmen.

Tschüß
Michael

 
Autor RE: Dankeschön   5 # 5 top
hlag
Amateur


User Avatar


Threadstarter

Beiträge: 16

Eingetreten: 28.01.20
Status: Offline
Eingetragen am 02.04.2020 01:20  

Hi Michael,

erstmal vielen Dank, ich hab jetzt was länger gebraucht, um da so weit durchzusteigen...

C ist eher rudimentär.

Immerhin, der aktuelle Status ist: ich kann Meldungen aus der CC-Schnitte empfangen und welche senden.
Ist noch eher rudimentär, aber immerhin kann ich Weichen ansprechen, diese stellen und die Antwort auswerten.

Es kommen in der Tat genau 13 bytes.

Die ersten vier (die Can-ID) hab ich noch nicht verstanden.

Wenn ich das richtig sehe, ist das zwar ein Block von vier Bytes, die aber als einzelne Bits in Gruppen zusammenhängen und nicht als die Bytes, als die sie gesendet werden (äh, klar ausgedrückt...?):

Die höheren vier bit der ersten Bytes sind die Prio

Meldung[0] >>4 = Prio

die 8 Bit command verteilen sich auf die niedrigen 4 bits des ersten Byte und die höheren 4 Bit des zweiten Bytes

Meldung[0] << 4 + Meldung[1] >> 4

Dann versteckt sich irgendwo das Res-ponse-Bit, anschließend 16 Bit Hash und die letzten drei Bit des letzten Bytes sind Abfall,

Ist das so richtig ?

lg Klaus


TS12, DX7, Tyros, VL70-m, Polysix, i3, Microwave, blofeld, TG77, Versi II, Rockkordeon, Loverock, Telecaster, GPC-16E, Grand Royale, APX500 BL und noch so ein paar
 
 
Springe zu Forum:
Ähnliche Themen wie "Frage zum Can Format" [1]
Thema Antworten Letzter Beitrag
Frage zum Can-Format
Allgemein
0
171 Hits
05.03.2020 15:17
hlag
Copyright 2010 by Sven "DJeaY" Schapmann