26 lines
767 B
C
26 lines
767 B
C
/*
|
||
* Общие контрольные суммы исторических протоколов SET. Алгоритмы с разными полиномами,
|
||
* начальными значениями и отражением битов не взаимозаменяемы, даже если возвращают одинаковый
|
||
* по ширине целый тип.
|
||
*/
|
||
|
||
/** @file set_crc.h @brief Shared checksums used by legacy SET controllers. */
|
||
#ifndef SET_CRC_H
|
||
#define SET_CRC_H
|
||
|
||
#include <stddef.h>
|
||
#include <stdint.h>
|
||
|
||
#ifdef __cplusplus
|
||
extern "C" {
|
||
#endif
|
||
|
||
/** CRC-16/Modbus: reflected polynomial 0xA001, initial value 0xFFFF. */
|
||
uint16_t set_crc16_modbus(const uint8_t *data, size_t size);
|
||
|
||
#ifdef __cplusplus
|
||
}
|
||
#endif
|
||
|
||
#endif /* SET_CRC_H */
|