Globalstar ST100 User Manual page 71

Hide thumbs Also See for ST100:
Table of Contents

Advertisement

8545-0194-01 v1.0
The following example is written in the Java programming language:
char crc16_lsb(byte pData[], int length)
{
int pData_i = 0; char s1,s2; byte i;
char data, crc;
crc = (char) 0xFFFF; if (length == 0) return 0;
do
{
data = (char)((char)0x00FF & pData[pData_i++]); crc = (char)(crc ^ data); for (i = 8; i > 0; i--)
{
if ((crc & 0x0001) != 0) crc = (char)((crc >> 1) ^ 0x8408);
else
crc >>= 1;
}
}while (--length != 0);
crc = (char)~crc;
return (crc);
}
USAGE:
calculate the CRC for a message and update the message CRC
msg[]; int len; char crc = crc16_lsb(msg,len- 2);
msg[len- 2] = (byte)((short)crc & (short)0xff); msg[len-
1] =
(byte)((short)crc >> 8);
ST100 User Manual v1
Confidential & Proprietary Information
64

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents