本帖最后由 ackyee 于 2014-11-29 19:45 编辑
一直都拿论坛的资料,这回自己也奉献一点:
一个不错的校验代码。 参考TI的CC2530官方例程得到。稍作了些调整
供大家学习交流之用
第一个函数是进行数组+校验字的 校验计算
第二个函数是根据数组计算校验字
该代码可以在串口传输,EEPROM存储等场合应用
PS 第一次在论坛传代码,好像[]在发布后会自动消失
下面的代码将数组[]特地加了空格处理,需要参考的朋友在编译过程中要自行调整
unsigned char CrcValid(unsigned char *pData, int length)
{
int crc = 0;
unsigned int i;
for(i = 0; i < length; i++){
crc ^= pData [ i ];
}
return (crc == 0);
}
unsigned char calcFCS(unsigned char *pBuf, unsigned char len)
{
unsigned char rtrn = 0;
while (len--)
{
rtrn ^= *pBuf++;
}
return rtrn;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
而且第一个函数的crc只有低8位有效,返回值不是0就是1。
一周热门 更多>