MG32F10x Standard Peripherals Firmware Library
mg32f10x_crc.h
Go to the documentation of this file.
1 
10 /* Define to prevent recursive inclusion -------------------------------------*/
11 #ifndef __MG32F10x_CRC_H
12 #define __MG32F10x_CRC_H
13 
14 #ifdef __cplusplus
15  extern "C" {
16 #endif
17 
18 /* Includes ------------------------------------------------------------------*/
19 #include "mg32f10x.h"
20 
29 /* Exported types ------------------------------------------------------------*/
30 /* Exported constants --------------------------------------------------------*/
31 /* Exported macro ------------------------------------------------------------*/
32 /* Exported functions --------------------------------------------------------*/
33 
34 uint8_t CRC8_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len);
35 uint8_t CRC8_ComputeBytes_Update(uint8_t seed, const uint8_t *ptr_data, uint32_t data_len);
36 
37 uint16_t CRC16_CCITT_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len);
38 uint16_t CRC16_CCITT_ComputeBytes_Update(uint16_t seed, const uint8_t *ptr_data, uint32_t data_len);
39 
40 uint16_t CRC16_Modbus_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len);
41 uint16_t CRC16_Modbus_ComputeBytes_Update(uint16_t seed, const uint8_t *ptr_data, uint32_t data_len);
42 
43 uint16_t CRC16_IBM_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len);
44 #define CRC16_IBM_ComputeBytes_Update CRC16_Modbus_ComputeBytes_Update
45 
46 uint32_t CRC32_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len);
47 uint32_t CRC32_ComputeBytes_Update(uint32_t seed, const uint8_t *ptr_data, uint32_t data_len);
48 
49 uint32_t CRC32_MPEG2_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len);
50 uint32_t CRC32_MPEG2_ComputeBytes_Update(uint32_t seed, const uint8_t *ptr_data, uint32_t data_len);
51 
52 uint16_t CRC16_CCITT_ComputeHalfWords(const uint16_t *ptr_data, uint32_t data_len);
53 uint16_t CRC16_CCITT_ComputeHalfWords_Update(uint16_t seed, const uint16_t *ptr_data, uint32_t data_len);
54 
55 uint16_t CRC16_Modbus_ComputeHalfWords(const uint16_t *ptr_data, uint32_t data_len);
56 uint16_t CRC16_Modbus_ComputeHalfWords_Update(uint16_t seed, const uint16_t *ptr_data, uint32_t data_len);
57 
58 uint16_t CRC16_IBM_ComputeHalfWords(const uint16_t *ptr_data, uint32_t data_len);
59 #define CRC16_IBM_ComputeHalfWords_Update CRC16_Modbus_ComputeHalfWords_Update
60 
61 uint32_t CRC32_ComputeWords(const uint32_t *ptr_data, uint32_t data_len);
62 uint32_t CRC32_ComputeWords_Update(uint32_t seed, const uint32_t *ptr_data, uint32_t data_len);
63 
64 uint32_t CRC32_MPEG2_ComputeWords(const uint32_t *ptr_data, uint32_t data_len);
65 uint32_t CRC32_MPEG2_ComputeWords_Update(uint32_t seed, const uint32_t *ptr_data, uint32_t data_len);
66 
75 #ifdef __cplusplus
76 }
77 #endif
78 
79 #endif /* __MG32F10x_CRC_H */
80 
uint16_t CRC16_CCITT_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC-CCITT of a given buffer of byte(8-bit) with default seed.
Definition: mg32f10x_crc.c:81
uint32_t CRC32_MPEG2_ComputeWords_Update(uint32_t seed, const uint32_t *ptr_data, uint32_t data_len)
Computes the 32-bit CRC(MPEG2) of a given buffer of word(32-bit) with user-defined seed.
Definition: mg32f10x_crc.c:470
uint16_t CRC16_Modbus_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC(Modbus) of a given buffer of byte(8-bit) with default seed.
Definition: mg32f10x_crc.c:123
uint32_t CRC32_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len)
Computes the 32-bit CRC of a given buffer of byte(8-bit) with default seed.
Definition: mg32f10x_crc.c:186
uint16_t CRC16_CCITT_ComputeHalfWords(const uint16_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC-CCITT of a given buffer of halfword(16-bit) with default seed.
Definition: mg32f10x_crc.c:272
uint16_t CRC16_IBM_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC(IBM) of a given buffer of byte(8-bit) with default seed.
Definition: mg32f10x_crc.c:166
uint16_t CRC16_Modbus_ComputeHalfWords_Update(uint16_t seed, const uint16_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC(Modbus) of a given buffer of halfword(16-bit) with user-defined seed.
Definition: mg32f10x_crc.c:342
uint32_t CRC32_MPEG2_ComputeWords(const uint32_t *ptr_data, uint32_t data_len)
Computes the 32-bit CRC(MPEG2) of a given buffer of word(32-bit) with default seed.
Definition: mg32f10x_crc.c:443
uint16_t CRC16_IBM_ComputeHalfWords(const uint16_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC(IBM) of a given buffer of halfword(16-bit) with default seed.
Definition: mg32f10x_crc.c:365
uint8_t CRC8_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len)
Computes the 8-bit CRC of a given buffer of byte(8-bit) with default seed.
Definition: mg32f10x_crc.c:39
uint32_t CRC32_MPEG2_ComputeBytes(const uint8_t *ptr_data, uint32_t data_len)
Computes the 32-bit CRC(MPEG2) of a given buffer of byte(8-bit) with default seed.
Definition: mg32f10x_crc.c:230
uint16_t CRC16_Modbus_ComputeBytes_Update(uint16_t seed, const uint8_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC(Modbus) of a given buffer of byte(8-bit) with user-defined seed.
Definition: mg32f10x_crc.c:145
uint32_t CRC32_ComputeBytes_Update(uint32_t seed, const uint8_t *ptr_data, uint32_t data_len)
Computes the 32-bit CRC of a given buffer of byte(8-bit) with user-defined seed.
Definition: mg32f10x_crc.c:208
uint8_t CRC8_ComputeBytes_Update(uint8_t seed, const uint8_t *ptr_data, uint32_t data_len)
Computes the 8-bit CRC of a given buffer of byte(8-bit) with user-defined seed.
Definition: mg32f10x_crc.c:60
uint32_t CRC32_ComputeWords(const uint32_t *ptr_data, uint32_t data_len)
Computes the 32-bit CRC of a given buffer of word(32-bit) with default seed.
Definition: mg32f10x_crc.c:387
uint16_t CRC16_CCITT_ComputeBytes_Update(uint16_t seed, const uint8_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC-CCITT of a given buffer of byte(8-bit) with user-defined seed.
Definition: mg32f10x_crc.c:102
uint16_t CRC16_Modbus_ComputeHalfWords(const uint16_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC(Modbus) of a given buffer of halfword(16-bit) with default seed.
Definition: mg32f10x_crc.c:318
uint32_t CRC32_MPEG2_ComputeBytes_Update(uint32_t seed, const uint8_t *ptr_data, uint32_t data_len)
Computes the 32-bit CRC(MPEG2) of a given buffer of byte(8-bit) with user-defined seed.
Definition: mg32f10x_crc.c:251
uint32_t CRC32_ComputeWords_Update(uint32_t seed, const uint32_t *ptr_data, uint32_t data_len)
Computes the 32-bit CRC of a given buffer of word(32-bit) with user-defined seed.
Definition: mg32f10x_crc.c:415
uint16_t CRC16_CCITT_ComputeHalfWords_Update(uint16_t seed, const uint16_t *ptr_data, uint32_t data_len)
Computes the 16-bit CRC-CCITT of a given buffer of halfword(16-bit) with user-defined seed.
Definition: mg32f10x_crc.c:295