Summe aus HEX-Werten
-
Hi Leute,
brauche auch mal Hilfe.Habe
BYTE DataToSend[] = "\x9F\x80\x60\x4E\x00";Prüfsumme sind einfach die Werte auf HEX-Ebene zusammengezählt.
Der calc von Windows rechnet sie mir richtig aus aber ich hatte noch nie mit HEX zu tun.
Daraus muss ich die Prüfsumme berechnen und diese anhängen.
Jemand bitte ne Idee?
-
Ich bin mir nicht sicher, ob ich Dich richtig verstehe. Aber Du willst einfach nur die einzelnen Werte des Arrays addieren, ja? Dann so:
int chksum = 0; for(int x = 0; x < (sizeof(DataToSend) / sizeof(DataToSend[0])); ++x) chksum += DataToSend[x];
-
Und genau da ist mein Problem. Es sollte HEX: CD bzw. DEZ: 205 rauskommen.
Bei deinem Code kommt 406 raus.Calc rechnet richtig wenn man die HEX eingibt und zusammenzählt.
-
Ernst gemeint? Du mußt das Ergebnis natürlich noch verkürzen:
BYTE b = LOBYTE(chksum);Die Variable b enthält jetzt 0xCD (hoffe ich, hab's nicht kontrolliert).
-
Super danke Funkt.