void calcrc(BYTE frame[],int n,BYTE *cod)
{ // 求MODBUS校验码
unsigned short crc=0xffff;
for (int i=0;i<n;i++)
{
crc^=frame[i];
for (int j=0;j<8;j++)
{
unsigned short flag=crc&1;
crc>>=1;
if (flag)
crc^=0xa001;
}
}
*(unsigned short *)cod=crc;
}
C语言的计算CRC的最简单程序,也是搜来的,能成功用。
如果楼主自已不能改,那就谁也不能邦你了