User's Manual

MPR series User’s Manual: Draft version 0.95 11/4/04 page 39
};
unsigned short CalculateBlockCRC16(byte count, char *buffer)
{
unsigned short crc = 0xFFFF;
char *pBuf;
pBuf = (char *)buffer;
while (count--)
crc = (unsigned short)((crc << 8) ^ crctab[(crc >> 8) ^
*pBuf++]);
return (unsigned short)(~crc);
}