Package com.dalsemi.onewire.utils
Class CRC16
java.lang.Object
com.dalsemi.onewire.utils.CRC16
CRC16 is a class containing an implementation of the Cyclic-Redundency-Check
(CRC) CRC16. The CRC16 is used in iButton memory packet structure.
CRC16 is based on the polynomial = X^16 + X^15 + X^2 + 1.
-
Method Summary
Modifier and TypeMethodDescriptionstatic int
compute
(byte[] dataToCrc) Perform the CRC16 on an array of data elements based on a zero seed.static int
compute
(byte[] dataToCrc, int seed) Perform the CRC16 on an array of data elements based on the provided seed.static int
compute
(byte[] dataToCrc, int off, int len) Perform the CRC16 on an array of data elements based on a zero seed.static int
compute
(byte[] dataToCrc, int off, int len, int seed) Perform the CRC16 on an array of data elements based on the provided seed.static int
compute
(int dataToCrc) Perform the CRC16 on the data element based on a zero seed.static int
compute
(int dataToCrc, int seed) Perform the CRC16 on the data element based on the provided seed.
-
Method Details
-
compute
public static int compute(int dataToCrc) Perform the CRC16 on the data element based on a zero seed.CRC16 is based on the polynomial = X^16 + X^15 + X^2 + 1.
- Parameters:
dataToCrc
- data element on which to perform the CRC16- Returns:
- CRC16 value
-
compute
public static int compute(int dataToCrc, int seed) Perform the CRC16 on the data element based on the provided seed.CRC16 is based on the polynomial = X^16 + X^15 + X^2 + 1.
- Parameters:
dataToCrc
- data element on which to perform the CRC16- Returns:
- CRC16 value
-
compute
public static int compute(byte[] dataToCrc) Perform the CRC16 on an array of data elements based on a zero seed.CRC16 is based on the polynomial = X^16 + X^15 + X^2 + 1.
- Parameters:
dataToCrc
- array of data elements on which to perform the CRC16- Returns:
- CRC16 value
-
compute
public static int compute(byte[] dataToCrc, int off, int len) Perform the CRC16 on an array of data elements based on a zero seed.CRC16 is based on the polynomial = X^16 + X^15 + X^2 + 1.
- Parameters:
dataToCrc
- array of data elements on which to perform the CRC16off
- offset into the data arraylen
- length of data to CRC16- Returns:
- CRC16 value
-
compute
public static int compute(byte[] dataToCrc, int off, int len, int seed) Perform the CRC16 on an array of data elements based on the provided seed.CRC16 is based on the polynomial = X^16 + X^15 + X^2 + 1.
- Parameters:
dataToCrc
- array of data elements on which to perform the CRC16off
- offset into the data arraylen
- length of data to CRC16seed
- seed to use for CRC16- Returns:
- CRC16 value
-
compute
public static int compute(byte[] dataToCrc, int seed) Perform the CRC16 on an array of data elements based on the provided seed.CRC16 is based on the polynomial = X^16 + X^15 + X^2 + 1.
- Parameters:
dataToCrc
- array of data elements on which to perform the CRC16seed
- seed to use for CRC16- Returns:
- CRC16 value
-