bool cksm_rslt(short arr[ ], int len)
Meridim配列のチェックサムを判定します.
引数1 : Meridim配列(short型)
引数2 : 配列の長さ(int型)
Meridim配列の末尾-1までの数値を合計し, 最後にビット反転しShort型に変換したチェックサム値と,
Meridim配列の末尾のチェックサム値を比較します.
結果がチェックOKならTrue, NGならFalseを返します.
/**
* @brief Evaluate checksum of Meridim.
*
* @param[in] arr[] Meridim array
* @param[in] len Length of array
* @return true Check OK
* @return false Check NG
*/
bool Meridian::cksm_rslt(short arr[], int len)
{
int _cksm = 0;
for (int i = 0; i < len - 1; i++)
{
_cksm += int(arr[i]);
}
if (short(~_cksm) == arr[len - 1])
{
return true;
}
return false;
}