Cyclic Redundancy Code (CRC)#
Functions that provide access to cyclic redundancy code (CRC) calculation. See crc.h for source code.
Functions#
Calculates 16-bit cyclic redundancy code (CITT CRC 16).
Calculates 32-bit cyclic redundancy code.
Function Documentation#
halCommonCrc16#
uint16_t halCommonCrc16 (uint8_t newByte, uint16_t prevResult)
Calculates 16-bit cyclic redundancy code (CITT CRC 16).
| Type | Direction | Argument Name | Description | 
|---|---|---|---|
| uint8_t | N/A | newByte | The new byte to be run through CRC. | 
| uint16_t | N/A | prevResult | The previous CRC result. | 
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.
Returns
- The new CRC result. 
halCommonCrc32#
uint32_t halCommonCrc32 (uint8_t newByte, uint32_t prevResult)
Calculates 32-bit cyclic redundancy code.
| Type | Direction | Argument Name | Description | 
|---|---|---|---|
| uint8_t | N/A | newByte | The new byte to be run through CRC. | 
| uint32_t | N/A | prevResult | The previous CRC result. | 
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.
Returns
- The new CRC result.