www.pudn.com > RMS2000_C.rar > Getcrc.cpp


#include "stdafx.h" 
#define  CrcGENERATE        0xa001    
WORD CrcTable[0x100]; 
void CrcInit() 
{ 
    WORD i,j; 
    WORD crc; 
 
    for(i=0;i<0x100;i++) 
    { 
	crc=i; 
	for(j=0;j<8;j++) 
	{ 
		if(crc&1) 
		{ 
		    crc>>=1; 
		    crc^=CrcGENERATE; 
		} 
		else 
		    crc>>=1; 
	} 
	CrcTable[i]=crc; 
     } 
} 
 
 
 
WORD  GetCrc(WORD count,BYTE *bufferP) 
{ 
	static int first=1; 
     
	WORD crc=0; 
	BYTE msg; 
	int i; 
 
	if(first) 
	{ 
		CrcInit(); 
		first=0; 
	} 
	for(i=0;i>=8; 
		crc^=CrcTable[msg]; 
	} 
	return	crc; 
}