Это из ISO 3309 (HDLC)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Codavr 12 апреля 2004 г. 12:28
В ответ на: У меня вопрос - контр сумма в AX.25 отправлено dm 12 апреля 2004 г. 11:01

Например это

void crc16_calc(BYTE data_byte, WORD* crc16)
{
/* Calculate CRC-16 value; uses The CCITT-16 Polynomial,
expressed as X^16 + X^12 + X^5 + 1
initial crc = (WORD)0xffff */

BYTE b;

*crc16 ^= (((WORD) data_byte) << 8);
for( b=0; b<8; ++b ){
if((*crc16 & (WORD) 0x8000)!=(BYTE)0x00)
*crc16 = (*crc16 << 1) ^ (WORD) 0x1021;
else
*crc16 = (*crc16 << 1);
}
}

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru