-
Trm138 - Crc
Помогите плз с подсчетом CRC для протокала "ОВЕН".
Нуждаюсь в коментариях к програмке
unsigned Hash(char Byte, char nbit, unsigned CRC)
{
for (int i = 0; i < nbit; i++, Byte <<= 1)
{
if ( ( Byte ^ (CRC>>8) ) & 0x80 )
{
CRC <<= 1; CRC ^= 0x8F57;
}
else CRC <<= 1;
}
return CRC;
}
-
Игорь<SCRIPT type=text/javascript> vbmenu_register("postmenu_92", true); </SCRIPT>
Нуждаюсь в коментариях к програмке
Вы не могли бы конкретно показать, что Вам не понятно? Какие операторы или строки.
-
Функция возвращает 16 битное беззнаковое значение. Начальное значение CRC=0. Для контрольной суммы nbit=8. В функцию передается все байты кадра за исключением последних двух которые и будут равны возвращаемому значению. После этого кадр преобразуется по принципу тетрада в ASCII символ и обрамляется символами '#' и ASCII(13).
Основная информация по использованию находится в Описании протокола ОВЕН