Functions that provide access to cyclic redundancy code (CRC) calculation. See
crc.h
for source code.
|
uint16_t
|
halCommonCrc16
(uint8_t newByte, uint16_t prevResult)
|
|
Calculates 16-bit cyclic redundancy code (CITT CRC 16).
|
|
uint32_t
|
halCommonCrc32
(uint8_t newByte, uint32_t prevResult)
|
|
Calculates 32-bit cyclic redundancy code.
|
#define CRC32_END 0xDEBB20E3L
|
#define INITIAL_CRC 0xFFFFFFFFL
|
uint16_t halCommonCrc16
|
(
|
uint8_t
|
newByte,
|
|
|
uint16_t
|
prevResult
|
|
)
|
|
|
Applies the standard CITT CRC 16 polynomial to a single byte. It should support being called first with an initial value, then repeatedly until all data is processed.
-
Parameters
-
newByte
|
The new byte to be run through CRC.
|
prevResult
|
The previous CRC result.
|
-
Returns
-
The new CRC result.
uint32_t halCommonCrc32
|
(
|
uint8_t
|
newByte,
|
|
|
uint32_t
|
prevResult
|
|
)
|
|
|
-
Note
-
On some radios or micros, the CRC for error detection on packet data is calculated in hardware.
Applies a CRC32 polynomial to a single byte. It should support being called first with an initial value, then repeatedly until all data is processed.
-
Parameters
-
newByte
|
The new byte to be run through CRC.
|
prevResult
|
The previous CRC result.
|
-
Returns
-
The new CRC result.