私は、シリアルポートを介してArduinoにデータを送信する私のプロジェクトに単純な制御CRCを行っています。
メッセージの CRC を計算しようとしています: A0h 45h 11h 83h または 69d 17d 160d 131d
文字列に変換すると、計算するメッセージが表示されます: "Eá◄â" ASCII に変換すると、次の結果が返されます: 69d 63d 63d 63d
なぜこれが起こったのですか?コードは以下です
tks
public byte CalculateCRC(string data)
{
data = "Eá◄â";
byte[] characters = new byte[System.Text.Encoding.ASCII.GetByteCount(data)];
characters = System.Text.Encoding.ASCII.GetBytes(data);
byte result = 0;
foreach (byte character in characters )
result = (byte)(result + character);
result = (byte)(result + 1);
return result;
}