[an error occurred while processing this directive]
|
int calcrc(char *ptr, int count)
{
int crc;
char i;
crc = 0;
while (--count >= 0)
{
crc = crc ^ (int) *ptr++ << 8;
i = 8;
do
{
if (crc & 0x8000)
crc = crc << 1 ^ 0x1021;
else
crc = crc << 1;
} while(--i);
}
return (crc);
}
Источник:
AVR350: XmodemCRC Receive Utility for AVR (16 pages, updated 5/ 02)
http://www.atmel.com/atmel/acrobat/doc1472.pdf
E-mail: info@telesys.ru