VB通信中CRC校验的问题---------- 请(暴风雨 v2.0)高手给看看,在线等!!!!!!!
我在做与下位串口R232通讯的程序时,需要将含有6位十六进制数据的字符串(例:01 04 05 0f 0f 0f)通过CRC校验后生成两位CRC校验码(一位高字节X和一位低字节Y)后,组成一个8位十六进制数据的字符串(01 04 05 0f 0f 0f X Y)发送给下位通讯.请各位高手帮忙看看,谢谢!!!!!!!!!
附:我这里有一个下位用C编写的CRC校验程序
unsigned msrCRC(unsigned char *pcMess, unsigned wLen) //*pcMess 字符数组
{
long MSBInfo;
int i,j ;
unsigned nCRCData;
nCRCData = 0xffff;
for(i = 0; i < wLen;i++)
{
nCRCData = nCRCData ^ pcMess[i] ;
for(j= 0 ; j < 8 ;j ++)
{
MSBInfo = nCRCData & 0x0001;
nCRCData = nCRCData >> 1;
if(MSBInfo != 0 )
nCRCData = nCRCData ^ 0xa001;
}
}
return nCRCData;
}
请教在VB中上述程序如何实现.