1 バイトのカウンターとおそらくチェックサムと共に 6 バイトのメッセージを送信するセンシング デバイスがあります。
データは次のようになります。
------DATA----------- -Counter- --Checksum?--
55 FF 00 00 EC FF ---- 60---------- 1F
カウンタの最後の 4 ビットは常に 0 に設定されます。つまり、これらのビットはおそらく使用されません。最後のバイトは、非常に特殊な性質を持つため、チェックサムと見なされます。データが変更されると、ランダムに変更される傾向があります。
ここで必要なのは、--DATA-- に基づいてこのチェックサムを計算するアルゴリズムを見つけることです。私が試したのは、すべての可能なCRC-8多項式です。各多項式について、データを反映させたり、切り替えたり、ゼロ以外で開始したりしました。通常のcrcを扱っていないという結論に達しました。アルゴリズム。また、成功せずにフレザーとアドラーの方法をいくつか試しましたが、xor を行ったり来たりしましたが、チェックサムを生成する方法はまだわかりません。
私の最大の懸念は、カウンターがどのように使用されるか??? 同じデータでカウンター値が異なると、異なるチェックサムが生成されます。計算にカウンターを含めようとしましたが、うまくいきませんでした。
他のデータサンプルは次のとおりです。
55 FF 00 00 F0 FF A0 38
66 0B EA FF BF FF C0 CA
5E 18 EA FF B7 FF 60 BD
F6 30 16 00 FC FE 10 81
言及する価値があるかもしれないもう 1 つのことは、データの最後のバイトが値 FF または FE のみを取ることです。
ここに投稿しようとするヒントやコツがあれば、本当に必死です。
ありがとう