如何在 twinCAT 3 中计算 CheckSum8 Xor?

问题描述 投票:0回答:0

我正在使用如下命令:“$02WSLD00000$03”,我知道它的校验和应该是“=”char 或 61 dec 或 3D 十六进制。 我正在尝试使用 OSCAT 库中的 CRC_GEN 函数,但它根本不起作用。 该网站给出了正确的值:https://www.scadacore.com/tools/programming-calculators/online-checksum-calculator/

我能做什么?

这就是我现在正在尝试的:

IF StartCheckSum THEN

CommandARRAY := MAXSTRING_TO_BYTEARR(GVL_SERIAL.HexCommand1);
CheckSumResult := CRC_GEN (ADR(GVL_SERIAL.HexCommand1), SIZEOF(GVL_SERIAL.HexCommand1),16#1021,16#8F,16#0000,REV_IN,REV_OUT,16#0000);

END_IF

StartCheckSum := FALSE ;

checksum plc twincat
© www.soinside.com 2019 - 2024. All rights reserved.