1
我正在用Linux设备(仅接收十六进制软件包)与Epson tm-t88iv热敏打印机进行低级别通信编程。我已阅读手册,试图了解如何构建校验和,但我无法设法重新创建它。4字节校验和,sum32算法
手册中说校验和是4个字节,代表发送包中所有数据的2个字节总和。
我目前有四个工作示例,我通过使用不同程序侦听Windows计算机上的端口找到了这些示例。最后4个十六进制是校验和(根据手册,03表示数据的结尾并包含在校验和计算中)。
02 AC 00 01 1C 00 00 03 30 30 43 45
02 AC 00 00 1C 80 80 1C 00 00 1C 00 00 1C 03 30 32 32 31
02 AD 07 01 1C 00 00 1C 31 30 03 30 31 35 33
02 AD 00 00 1C 80 80 1C 00 00 1C 00 00 1C 03 30 32 32 32
我读过的地方有sum32算法,但我找不到任何它的例子或如何编程它。
谢谢!
谢谢你发布你的答案! – problemPotato
另一种方法是查看结果并将结果的每个数字解释为ASCII字符,然后基数为四个ASCII零,将结果相加并转换为十六进制。 – BVJ