Answers:
那是校验和。它是由主机软件添加到G代码中的,以允许固件进行一些基本验证,以确保G代码未传输。它不会改变G代码的含义,而您的序列实际代表的只是M106, G28, M107
。这些N0,N1,N2,...
是行号,并且行号和校验和的组合用于请求重新发送在传输过程中损坏的任何行。
byte checksum = 0; byte count = 0; while(instruction[count] != '*') checksum = checksum^instruction[count++];