你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

Hex文件格式CRC校验

[复制链接]
0度虚实 提问时间:2015-1-29 21:32 /
其中的一条记录:1011000071079907E8071008D206FA0671079907D0
0xD0为校验,但不知道怎么编写计算校验的程序。
校验和的算法为:计算从0x3A 以后(不包括0x3A)的所有各字节的和模256的余。即各字节二进制算术和,不计超过256的溢出值后用0x100减去这个算数累加和,得出得值就是此行得校验和。
计算方法有,但看的不是很懂,望指导或者有代码更好
收藏 评论19 发布时间:2015-1-29 21:32

举报

19个回答
0度虚实 回答时间:2015-1-30 13:45:08
shaoziyang 发表于 2015-1-30 13:33
计算结果是补码啊。其实直接把校验也加上,如果结果是0,说明就是正确的。

0x30+0xD0=256=0 ...

太感谢,困扰我很久了.关于补码问题,没涉及到负数,结果为什么会是补码
0度虚实 回答时间:2015-1-29 21:33:18
自己先顶,坐等啊。。。
shaoziyang 回答时间:2015-1-29 22:48:25
比如用一个字节变量,将前面全部数据累加,然后和最后一个进行比较。
还有,这个不能叫CRC校验的。
拼命三郎 回答时间:2015-1-30 08:05:56
stm32.jpg
拼命三郎 回答时间:2015-1-30 08:27:36
stm32.jpg
0度虚实 回答时间:2015-1-30 09:05:39
shaoziyang 发表于 2015-1-29 22:48
比如用一个字节变量,将前面全部数据累加,然后和最后一个进行比较。
还有,这个不能叫CRC校验的。
...

就这么简单吗,能给个算法吗?
ataudio 回答时间:2015-1-30 09:11:33
shaoziyang 发表于 2015-1-29 22:48
比如用一个字节变量,将前面全部数据累加,然后和最后一个进行比较。
还有,这个不能叫CRC校验的。
...

CRC有特定算法的。

二十四节气~大雪

二十四节气~大雪
shaoziyang 回答时间:2015-1-30 09:23:51
0度虚实 发表于 2015-1-30 09:05
就这么简单吗,能给个算法吗?

就这么简单啊,代码自己很容易实现吧。没有什么困难的。

先判断第一个字节是不是冒号,然后判断第2/3字节,代表数据类型;在后面是长度、地址等,然后是数据,最后一个字节是校验。找一个HEX文件的说明,很快就可以搞定了。
shaoziyang 回答时间:2015-1-30 09:25:30
百科中的解释,可以参考一下。

http://baike.baidu.com/link?url= ... ZCXGaLru14c9oDmRZkq
技术部-徐亚菲 回答时间:2015-1-30 11:21:20
怎么和modbus通信协议似的!
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版