CRC16计算子程序(非查表法)

已锁定

yanxiao

版主

  • 帖子

    12143
  • 精华

    46
  • 被关注

    183

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

CRC16计算子程序(非查表法)

3022

1

2012-08-29 07:57:02

1、CRC16计算
这个CRC16的计算是为modbus-RTU服务的,所以CRC的多项式采用modbus官方协议给出的公式。
在待计算的CRC数据表格式上,采用RCV/XMT相同的格式,方便通讯程序的编写。
在变量定义上,全部采用局部变量,保持子程序的高度独立性,但会增加计算时间;另有一个子程序,变量全部为全局的,执行速度较快。
欢迎下载测试。
程序采用STL写成,不能直接转为LAD格式。但可以在LAD环境下调用,不产生兼容问题。

2、实验结果:
2.1、计算时间实验,计算量:254字节
全部采用局部变量:约210ms,826us/字节
全部采用V区全局变量:约175ms,689us/字节
2.2、对比标准库
modbus-Master库采用的是非查表计算,约1.85ms/字(2字节);
modbus-Slave库采用的是查表法计算,约420us/字节。

点击此处查看附件
CRC16计算子程序(非查表法) 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。