📄 crc.c
字号:
#include <iom16v.h>
#include "Crc.h"
//============================================================
//函 数:unsigned short CRC16(unsigned char *Message, int Len)
//功 能:CRC16计算
//入口参数:Message 要进行CRC16计算字符串,Len字符串长度
//返 回 值:CRC16计算结果
//设 计 者:覃道堂
//创作时间:2004-03-30
//修改时间:
//修改目的:
//============================================================
unsigned int BlockCRC16UsingAlgorithm(unsigned char *Block, unsigned int Len)
{
unsigned int CRC;
unsigned int uiCharShifted;
unsigned int i;
unsigned char v;
CRC = 0;
for (i=0; i<Len; i++)
{
uiCharShifted = ((unsigned int)(Block[i]) & 0x00FF) << 8;
CRC = (CRC) ^ uiCharShifted;
for (v = 0; v < 8; ++v)
{
if ( CRC & 0x8000 )
CRC = (CRC << 1) ^ 0x1021;
else
CRC = CRC << 1;
}
CRC = CRC & 0xFFFF;
}
// ByteCRC16UsingAlgorithm(CRC, Block[i]);
return CRC;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -