解析器-查找错误的FCS



文件parser.log由以下结构的传感器组成:

0x7E    0x40    0x51    Data (17 bytes) FCS(CRC)    0x7E

在数据流内部,速度是从第9位到第20位(包括)。数据是以小尾数表示的。
每当数据或FCS计算中应该出现7E时,将其替换为"7D 5E",将7D替换为"7D 5D"。
FCS的计算如下0XFF -Sum(报头和数据字节)%0X100头和数据字节=从0X7E和FCS开始和结束的所有消息。
速度在数据和实际值之间有0.1的系数(意味着456的值实际上是45.6)

问题:找到错误的FCS。

谁能指导我怎么做这件事?我试着在excel中做,但计算是漫长的。

Excel不适合这类问题。我建议您对这类数据使用已知的解析器,或者自己编写一个解析器。您可以从用C(或c++)定义struct开始,解释数据的格式,然后从那里开始。

最新更新