Prüfsummenberechnung für Servo-Steuerung

egoexpress

Level-1
Beiträge
7
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

Würdet ihr mir bitte helfen, folgende Prüfsummenberechnung zu verstehen? Egal wie ich rechne, ich komme auf kein sinnvolles Ergebnis.

Calculation example of BCC:

Using
[STX][‘1’][‘a’][“1234567800”][bcc][etx]
of command bucket as examples, sum of all character codes in block check range will be:
Sum = 31H+61H+31H+32H+33H+34H+35H+36H+37H+38H+30H+30H = 296H

Taking its support number of 2 as 8 bit length, the answer is 64H, therefore [BCC] will be: [BCC] = “6A”

Dass die Werte hexadezimal sind, ist klar.
Ist aus einem japanischen manual ;-)

sonnigen Gruß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
BCC Prüfsumme ist XOR über alle Bytes. Die XOR-Summe mit der Prüfsumme xoderriert ergibt Null.

könntest Du es bitte noch etwas genauer erklären. Ich bin Einsteiger.
Das mit der XOR also exclusiv oder Berechnung hab ich gerade bei wikipedia nachgelesen. ;)
Schaffe es aber irgendwie nicht damit meine Prüfsumme zu verstehen.

Danke,
Gruss
 
Steuerzeichen STX (Start of Transmission) Hexadezimal 02H
Steuerzeichen ETX (End of Transmission) Hexadezimal 03H
BCC (Block Check Character) Prüfsumme Hexadezimal

Somit ist Dein Telegramm:

02,01,61,31,32,33,34,35,36,37,38,30,30,6A,03

XOR über alle Byte bis zur Prüfsumme ergibt die Prüfsumme Hexadezimal 6AH.

Die Prüfsumme wird mitübertragen 6AH und kann jetzt mit der errechneten Summe Xoderriert werden. Kommt dabei Null raus ist das Telegramm richtig übertragen worden. Ungleich Null ist das Telegramm unbrauchbar.
 
Hallo IFATD

Ich glaube ich muss mich jetzt erst einmal mit dem XOR Verfahren beschäftigen. Dass Du den Fehler in dem Beispiel gefunden hast, ist schon eine sehr große Hilfe.

Herzlichen Dank,
Gruß
 
02,01,61,31,32,33,34,35,36,37,38,30,30,6A,03

XOR über alle Byte bis zur Prüfsumme ergibt die Prüfsumme Hexadezimal 6AH.

Das ist klar, ergibt auch Sinn, da dieses die universelle Prüfsumme ist.
Aber was bedeutet dann dieses:

sum of all
character codes in block check range will be:
Sum = 31H+61H+31H+32H+33H+34H+35H+36H+37H+38H+30H+30H = 296H
Taking its support number of 2 as 8 bit length, the answer is 64H,

Das wäre dann sinnloser Text?!?

Gruss
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Richtig! Der Kandidat erhält 100 Punkte. Das ist sinnloser Text. Dann hast Du es ja jetzt verstanden. Es ist natürlich schlimm wenn in sogenanten "Fachpublikationen" solch sinnloser Text geschrieben wird.
 
Zurück
Oben