Cyclic Redundancy Check
Description
Functions that provide access to cyclic redundancy code (CRC) calculation. See crc.h for source code.
Functions |
|
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.
|
|
Macros |
|
#define | INITIAL_CRC 0xFFFFFFFFL |
#define | CRC32_START INITIAL_CRC |
#define | CRC32_END 0xDEBB20E3L |
Function Documentation
◆ halCommonCrc16()
uint16_t halCommonCrc16 | ( | uint8_t |
newByte,
|
uint16_t |
prevResult
|
||
) |
Calculates 16-bit cyclic redundancy code (CITT CRC 16).
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.
◆ halCommonCrc32()
uint32_t halCommonCrc32 | ( | uint8_t |
newByte,
|
uint32_t |
prevResult
|
||
) |
Calculates 32-bit cyclic redundancy code.
- 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.