📄 crc_c2.txt
字号:
8bit and 16bit CRC source
#define AL2_FCS_COEF ((1 << 7) + (1 << 6) + (1 << 5)) /*X(8) + X(2) + X(1) +
1*/
#define AL3_FCS_COEF ((1 << 15) + (1 << 10) + (1 << 3)) /*X(16) + X(12) + X(
5) + 1*/
unsigned char GetOneCrc(unsigned char * data, int length)
{
unsigned char cFcs = 0;
int i, j;
for( i = 0; i < length; i ++ )
{
cFcs ^= data[i];
for(j = 0; j < 8; j ++)
{
if (cFcs & 1)
cFcs = (unsigned char)((cFcs >> 1) ^ AL2_FCS_COEF);
else
cFcs >>= 1;
}
}
return cFcs;
}
unsigned short GetTwoCrc(unsigned char * data, int length)
{
int i, j;
unsigned short iFcs=0;
for( i = 0; i < length; i ++ )
{
iFcs ^= (unsigned short)data[i];
for(j = 0; j < 8; j ++)
{
if (iFcs & 1)
iFcs = (unsigned short)((iFcs >> 1) ^ AL3_FCS_COEF);
else
iFcs >>= 1;
}
}
return iFcs;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -