返回信息流收到一组通信协议内容,其中大部分内容都能很容易看得出来规律
但是就是校验码是怎么计算出来的不是很懂,经尝试,没有使用CRC校验算法
想请教各大神有没有这种校验的?
样例如下:
1.20(Bytes)10 02 B8 FE 0C 64 0C 00 00 00 3F 10 10 00 00 00 69 EA 10 03
2.42(Bytes)10 02 B8 FE 0C 64 0C 01 00 00 06 17 00 2F 75 73 65 72 2F 4E 43 50 52 4F 47 2F 4F 30 30 32 33 2E 43 4E 43 00 00 00 A6 5B 10 03
3.17(Bytes) 10 02 11 64 0C FE 0C 01 00 00 C6 12 80 7A DF 10 03
4.20(Bytes)10 02 B8 FE 0C 64 0C 02 00 00 3F 03 00 01 00 00 0C 50 10 03
5.20(Bytes) 10 02 11 64 0C FE 0C 02 00 00 BF 03 00 01 00 00 7E E9 10 03
6.42(Bytes)10 02 B8 FE 0C 64 0C 03 00 00 06 17 00 2F 75 73 65 72 2F 4E 43 50 52 4F 47 2F 4F 30 30 32 33 2E 43 4E 43 00 00 00 AA 28 10 03
7.17(Bytes) 10 02 11 64 0C FE 0C 03 00 00 C6 16 80 3D 5B 10 03
8.42(Bytes)10 02 B8 FE 0C 64 0C 04 00 00 01 1A 00 17 00 2F 75 73 65 72 2F 4E 43 50 52 4F 47 2F 4F 30 30 32 33 2E 43 4E 43 00 A5 1C 10 03
9.21(Bytes) 10 02 11 64 0C FE 0C 04 00 00 81 1A 00 00 00 01 00 79 00 10 03
10.23(Bytes) 10 02 11 64 0C FE 0C 05 00 00 83 01 00 3D 00 00 00 00 00 8B B3 10 03
11.17(Bytes)10 02 B8 FE 0C 64 0C 06 00 00 04 01 00 D1 9C 10 03
12.17(Bytes) 10 02 11 64 0C FE 0C 06 00 00 84 01 00 06 FB 10 03
先用个例子来解释下:
12.17(Bytes) 10 02 11 64 0C FE 0C 06 00 00 84 01 00 06 FB 10 03
蓝色为校验码,一般由整个数据包的数据域(10 02 和10 03之间的数据:11 64 0C FE 0C 06 00 00 84 01 00)或者整个数据包的其他数据经过一些校验算法生成,CRC尝试过不成功,遂来请教各位,有没有人能提供一下意见或建议?
这是一条镜像帖。来源:北邮人论坛 / cpp / #85874同步于 2015/3/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
【请教】通信协议校验码
FromMars
2015/3/10镜像同步7 回复
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
都不知道= =
公共的 除了CRC 还有其他哪些生成校验码方法吗
还有可能是 在公共校验方法的基础上再做处理也不一定
【 在 lqb0635 的大作中提到: 】
: 这是公共通信协议,还是自定义的,如果是自定义的话,那就只能慢慢试了···
我原来做的时候也是用的CRC,你做CRC的加帧头了吗,加与不加都试一下
【 在 FromMars 的大作中提到: 】
: 都不知道= =
: 公共的 除了CRC 还有其他哪些生成校验码方法吗
: 还有可能是 在公共校验方法的基础上再做处理也不一定
刚试了下 不对
不知道还能用什么方法尝试咧- -
【 在 lqb0635 的大作中提到: 】
: 我原来做的时候也是用的CRC,你做CRC的加帧头了吗,加与不加都试一下