/* * Общие контрольные суммы исторических протоколов SET. Алгоритмы с разными полиномами, * начальными значениями и отражением битов не взаимозаменяемы, даже если возвращают одинаковый * по ширине целый тип. */ /** @file set_crc.h @brief Shared checksums used by legacy SET controllers. */ #ifndef SET_CRC_H #define SET_CRC_H #include #include #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 */