我需要计算在EPC无源射频识别协议标准(超高频1类Gen 2标准)中指定的CRC-5校验和。我打算使用Boost中的优化crc计算机进行计算,但我很难将EPC规范中的信息映射到crc计算机模板参数:
template < std::size_t Bits, impl_def TruncPoly,
impl_def InitRem, impl_def FinalXor,
bool ReflectIn, bool ReflectRem >表6.12载有欧洲保护委员会标准中“儿童权利公约第五公约”的定义:

附件F载有这一补充资料:

第一个模板参数(位)显然是5,我认为TruncPoly应该是0x09 (来自维基百科),但是我确实需要一些建议。
发布于 2014-12-07 14:55:42
经过更多的搜索,我发现了以下内容:http://reveng.sourceforge.net/crc-catalogue/1-15.htm#crc.cat-bits.5
它提供了以下信息(复制以确保它不会消失):

如果看不清楚,有关资料如下:
width=5 poly=0x09 init=0x09 refin=false refout=false xorout=0x00 check=0x00 name="CRC-5/EPC“
正如您所看到的,他们不仅给出了所需的信息,而且还彻底引用了它们的来源,所以如果您正在使用这个链接,我可以建议您遵循这个链接。
为了回答我自己的问题,以下是crc-5-epc的强化定义:
boost::crc_optimal<5, 0x09, 0x09, 0x00, false, false> crc_5_epc;https://stackoverflow.com/questions/27343742
复制相似问题