for (i=0;i<CRC_CNT; i++){
CRC_Temp ^= Buf;
for (j=0;j<8;j++) {
if (CRC_Temp & 0x01)
CRC_Temp = (CRC_Temp >>1 ) ^ 0xa001;
else
CRC_Temp = CRC_Temp >> 1;
}
}
return(CRC_Temp);
}
//然后把下面的输出放在自己的程序里就行了~TxBuf是最后输出的~他给的是short那货16位的,俺给改成8位的char了
//然后Out是你要存的想要看的数据~
//就这样了~
unsigned short CRC_Tmp;
unsigned char TxBuf[10], TxCnt;
for (int i = 0;i < 4;i ++){
TxBuf[2*i+0] = Out;
TxBuf[2*i+1] = Out>>8;
}
CRC_Tmp = CRC_CHECK(TxBuf,8);
TxBuf[8] = CRC_Tmp&0xff;
TxBuf[9] = CRC_Tmp>>8;
//send first data
for (int i = 0;i < 10;i ++)
LPLD_UART_PutChar(UART5,TxBuf); //send begin