English
Language : 

MRF89XAM8A-I Datasheet, PDF (132/140 Pages) Microchip Technology – Ultra Low-Power, Integrated ISM Band Sub-GHz Transceiver
MRF89XA
APPENDIX B: CRC COMPUTATION IN C# (CONVERTIBLE TO C)
const ushort Polynome = 0x1021;
//Polynome = X^16+X^12+X^5+1
ushort ComputeCrc(ushort crc, byte data)
{
for(inti= 0; i<8; i++
{
if((((crc & 0x8000)>>8)^(data &0x80))!=0)
{
//shift left once crc^=Polynome; //XOR with polynomial
}
else
//next packetData reg bit
}
return crc;
}
public ushort ComputeCrc(byte[] packet)
{
ushort crc = 0x1D0F;
for(int i=0; i<packet.Length; i++)
{
crc = ComputeCrc(crc, packet[i]);
}
return (ushort)(~crc);
}
DS70622C-page 1
Preliminary
© 2010–2011 Microchip Technology Inc.