仪器社区

求 c# 基于ModBus RTU的CRC算法

射手Wenyan 2011-04-07
在线等c# 基于ModBus RTU的CRC算法
评论
全部评论
靳薪善
难怪我怎么看都像C++,看到Z后一句话才确定真的是C++;
uint crc_16(uint[] Array,uint[] Rcvbuf,uint Len)
{
uint IX,IY,CRC;
CRC=0xFFFF;//set all 1

if (Len<=0)
CRC = 0;
else
{
Len--;
;
for (IX=0;IX<=Len;IX++)
{
CRC=CRC^(Array[IX]);
for(IY=0;IY<=7;IY++)
{
if ((CRC&1)!=0 )
CRC=(CRC>>1)^0xA001;
else
CRC=CRC>>1; //
}
}

}
Rcvbuf[0] = (CRC & 0xff00)>>8;//高位置
Rcvbuf[1] = (CRC & 0x00ff); //低位置

CRC= Rcvbuf[0]<<8;
CRC+= Rcvbuf[1];
return CRC;
}
13 0 2011-04-09 0条评论 回复
巨蟹黄庆为
你比我猛多了,你专业我业余,抱歉我帮不了你,
16 0 2011-04-08 0条评论 回复
您可能感兴趣的社区主题
加载中...
发布 评论