資源簡介
crc16/32計算實例(crc16_32.c)
代碼片段和文件信息
#include?“crc16_32.h“
/******************************************************************************
?*?Poly:????polynomial_constant
?*?Init:????0x0000
?*?Refin:???False
?*?Refout:??False
?*?Xorout:??0x0000
?*****************************************************************************/
uint16_t?rssp1_algorithm_crc16(uint8_t?*data?uint32_t?lengthuint32_t?polynomial_constant)
{
????uint8_t?i;
????uint16_t?crc?=?0;????????????//?Initial?value
????while(length--)
????{
????????crc?^=?(uint16_t)(*data++)?<8;?//?crc?^=?(uint16_t)(*data)<<8;?data++;
????????for?(i?=?0;?i?8;?++i)
????????{
????????????if?(?crc?&?0x8000?)
????????????????crc?=?(crc?<1)?^?polynomial_constant;
????????????else
????????????????crc?<<=?1;
????????}
????}
????return?c
- 上一篇:libevent(timeout.cpp)
- 下一篇:qt處理圖形
評論
共有 條評論