シリアル経由でマシンと通信しています。プロトコル通信仕様の一部には、制御合計は「<'PS'> (含まれる)、<'data'> から <'CS'> までのバイトの算術合計」であると記載されています。
パケット メッセージは次のように構成されています。
<'PS'><'data'><'CS'>、ここで:
<'PS'> - パケット サイズ
長さ: 1
値: 0x02 ~ 0x63
最大パケット長は 99 バイトです
<'data'> - データ
長さ: 1...90 バイト
値: 0x00 - 0xFF
データ部分の長さはコマンドによって異なります。
<'CS'> - チェックサム
長さ - 1 バイト
値: 0x00 - 0xFF
例:
ACK パケット: 0x02 0x01 0x03ここで、0x03 はチェックサムです。
では、C++ でこれらのバイトのチェックサムを計算するにはどうすればよいでしょうか?