📄 crc_check.c
字号:
#include "common.h"
#include "CRC_CHECK.h"
unsigned char crc8(unsigned char *ptr, unsigned char len)
{
unsigned char i;
unsigned char crc=0;
while(len--!=0)
{
for(i=1; i!=0; i*=2)
{
if((crc&1)!=0)
{
crc/=2;
crc^=0x8C;
}
else
crc/=2;
if((*ptr&i)!=0)
crc^=0x8C;
}
ptr++;
}
return(crc);
}
/*
//1.根据老古开发网资料,使用半字节查表的Crc16方法,适合单片机,已测试
unsigned int crc_ta[16]={
0x0000,0x1021,0x2042,0x3063,0x4084,0x50a5,0x60c6,0x70e7,
0x8108,0x9129,0xa14a,0xb16b,0xc18c,0xd1ad,0xe1ce,0xf1ef,
};
unsigned int Crc16(unsigned char *ptr, unsigned char len)
{
unsigned int crc;
unsigned char da;
crc=0;
while(len--!=0)
{
da=crc>>12;
crc<<=4;
crc^=crc_ta[da^(*ptr/16)];
da=crc>>12;
crc<<=4;
crc^=crc_ta[da^(*ptr&0x0f)];
ptr++;
}
return(crc);
}*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -